• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag
 

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Stumped on memory problem :(
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Stumped on memory problem :(


  • Subject: Re: Stumped on memory problem :(
  • From: Jeremy Pereira <email@hidden>
  • Date: Tue, 6 Jan 2009 09:28:03 +0000


On 2 Jan 2009, at 01:14, Jacob Rhoden wrote:

I have read the memory management documentation over and over but still cannot work out the problem with this code, can anyone see it? I have spent hours on this!

+(NSMutableArray*)getStrings {
 NSMutableDictionary* dict = [[NSMutableDictionary alloc] init];
 [dict setValue: @"" forKey: [NSString stringWithString:@"one"]];
 [dict setValue: @"" forKey: [NSString stringWithString:@"two"]];

NSMutableArray *array = [[NSMutableArray array] init];

This line should read: NSMutableArray *array = [[NSMutableArray alloc] init];


This *may* be the cause of the problem.


NSEnumerator* keyEnum = [dict keyEnumerator]; NSString* key; while ((key = [keyEnum nextObject])) { [array addObject: key]; } [dict release];

 return [array autorelease];
}

// Here is where I call the above function
NSMutableArray* a =[StringHelper getStrings];
[a retain];
for(int i=0;i<a.count;i++) {
 NSLog(@"> %@",(NSString*)[a objectAtIndex: i]);

You don't need to cast the object to NSString*. %@ works with any subclass of NSObject.



} [a release];

AFTER the code is complete I see the following message, the address location is always the pointer to the array created in the getStrings method.

2009-01-02 12:07:29.277 Test[5184:813] *** -[CFArray release]: message sent to deallocated instance 0x132950

Any help muchly appreciated. I have tried with and without the [a retain] and [a release].
_______________________________________________


Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden

_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


References: 
 >Stumped on memory problem :( (From: Jacob Rhoden <email@hidden>)

  • Prev by Date: Re: Display Mail type outlineView numbers
  • Next by Date: Re: Stumped on memory problem :(
  • Previous by thread: Re: Stumped on memory problem :(
  • Next by thread: Re: Stumped on memory problem :(
  • Index(es):
    • Date
    • Thread