Please just refer people to http://developer.apple.com/documentation/Cocoa/Conceptual/MemoryMgmt/Tasks/MemoryManagementRules.html when memory management comes up.
And in Gecko's case, 'crypto' certainly does need to be released, since it's being alloc-inited. On Tue, Nov 4, 2008 at 1:48 PM, Alex Heinz <[EMAIL PROTECTED]> wrote: > The SSCrypto object doesn't need to be released; it isn't being retained, > and doesn't leave the scope of the function. It will be deallocated when > control leaves the function. > > Alex > > On Nov 4, 2008, at 12:09 AM, Roland King wrote: > >> well no that would leak since then the crypto object wouldn't get >> released. Also, I don't have the documentation for SSCrypto but I'd have >> thought whatever the digest returns is already autoreleased, so releasing it >> again would be wrong. >> >> Question is how are you calling this? Is there an autorelease pool set up >> somewhere which is actually getting purged? All autorelease is doing is >> sticking it on the autorelease pool, if nothing cleans up the pool, it'll >> just hang onto them forever. >> >> What crash are you getting, are you getting out of memory or are you >> getting a crash because you're accessing an already freed object or freeing >> it twice? >> >> Alex Heinz wrote: >> >>> You probably want [[[crypto digest:@"MD5"] hexval] autorelease]. This >>> will add the NSString object to the autorelease pool, instead of the >>> SSCrypto object, as you are doing now. >>> >>> HTH, >>> Alex >>> >>> On Nov 3, 2008, at 9:05 PM, Mr. Gecko wrote: >>> >>>> Hello I am trying to MD5 a whole bunch of strings and I choose SSCrypto >>>> for it, but for some reason, it crashes because of memory. I know it has >>>> to >>>> do with releasing, I haven't found much details on when to use release and >>>> autorelease; so this is a huge task for me to find out. >>>> Here is my method I have made. >>>> - (NSString *)md5:(NSString *)MD5 { >>>> SSCrypto *crypto = [[SSCrypto alloc] init]; >>>> [crypto setClearTextWithString:MD5]; >>>> >>>> return [[[crypto autorelease] digest:@"MD5"] hexval]; >>>> } >>>> if you could point out what I am doing wrong, I would be great full. >>>> >>>> Thanks, >>>> Mr. Gecko >>>> _______________________________________________ >>>> >>>> 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/aheinz2%40johnshopkins.edu >>>> >>>> This email sent to [EMAIL PROTECTED] >>> >>> _______________________________________________ >>> >>> 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/rols%40rols.org >>> >>> This email sent to [EMAIL PROTECTED] >> > _______________________________________________ > > 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/maillist%40steelskies.com > > This email sent to [EMAIL PROTECTED] > _______________________________________________ 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]