On Fri, Nov 28, 2008 at 7:04 PM, dct <[EMAIL PROTECTED]> wrote: > I've started using Instruments/Leaks on a project that has been building and > running as expected. It has identified a goodly number of CFDictionary leaks > (a Malloc leak followed by an Autorelease leak) associated with lines that, > in one typical case, reads: > > [tmp setObject:[NSDictionary dictionaryWithDictionary:tmp2] > forKey:@"Data"]; > > The MutableDictionary object "tmp" is instantiated at the beginning of this > particular method by: > > NSMutableDictionary *tmp = [[NSMutableDictionary dictionaryWithCapacity:4] > autorelease]; > > Do I need to autorelease a la: > > [tmp setObject:[[NSDictionary dictionaryWithDictionary:tmp2] autorelease] > forKey:@"Data"]; > > or is this a non-problem given that the reported Malloc leak is followed by > an Autorelease leak?
"An autorelease leak" is not a phrase which makes much sense. I'm guessing that you're using the ObjectAlloc instrument, either instead of the Leaks instrument or along with it, and you're misinterpreting what it says. The ObjectAlloc instrument can be configured to track every ObjC memory management event, including allocations, destructions, retains, releases, and autoreleases. It will point out where each one happens to any object in your app. This does *not* indicate an error, however. If you're using this instrument and it says "Autorelease" happened on such-and-such a line, that doesn't mean there's a problem there. It only means that this event happened on that line. It could be perfectly legitimate. The purpose of the tracking is so that you can look at the entire history, and discover places where the reference counting isn't balanced. Mike _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) 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: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [EMAIL PROTECTED]