Re: Overriding the release mehod
Re: Overriding the release mehod
- Subject: Re: Overriding the release mehod
- From: Greg Parker <email@hidden>
- Date: Wed, 25 Jan 2017 15:38:44 -0800
What Are You Trying To Do™ is in fact precisely the correct response to your question. Some overrides of -release need to call [super release]. Others do not. It depends on … what they are trying to do.
Overriding release to unregister an observer is almost certainly a bad idea, but yes, such an override ought to call [super release] if the object is expected to be retained and released and deallocated normally.
--
Greg Parker email@hidden <mailto:email@hidden> Runtime Wrangler
> On Jan 25, 2017, at 8:23 AM, Dave <email@hidden> wrote:
>
> I hate it when people as that question! There are some memory leaks in a 3rd party package. It overrides release to unregister an observer but doesn’t call super. If I call super the leaks go away and all is well. I just want to know where is it documented really, I can’t find it searching the docs.
>
> Cheers
> Dave
>
>> On 25 Jan 2017, at 15:55, Mike Abdullah <email@hidden> wrote:
>>
>> You’re inevitably going to get asked this:
>> Why on earth are you overriding release? It’s an incredibly niche thing to do, and the answer probably depends a lot on why you’re overriding it.
>>
>>> On 25 Jan 2017, at 16:52, Dave <email@hidden> wrote:
>>>
>>> Hi,
>>>
>>> Does [suoer release] need to be called if you override this method? I’m 99.99999% sure it does, but I can’t find it anywhere it actually says it in black and white.
>>>
>>> All the Best
>>> Dave
_______________________________________________
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