• 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: How to safely delete a WebView delegate object?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to safely delete a WebView delegate object?


  • Subject: Re: How to safely delete a WebView delegate object?
  • From: Quincey Morris <email@hidden>
  • Date: Wed, 15 Apr 2015 00:44:36 +0000

On Apr 14, 2015, at 17:01 , Juanjo Conti <email@hidden> wrote:
>
> If I click the button too many times, fast enough, my app crash with a
> EXEC_ error and if I enable zombie objects I get that it crash when one of
> this two messages is been send:
>
> [MyDelegate respondsToSelector] or [MyDelegate retain]
>
> Does this smell? Any tip I should have in mind for situations like this?

It smells of a memory management error. Delegates are, in most of the modern Cocoa classes, unretained objects, and your array (with its strong references to your delegates) is what’s keeping them alive. When you remove the array element, the strong reference disappears, and your delegate can get deallocated, leading to such crashes.

You should make sure you’re setting the various delegate properties in the WebView to nil before removing the array element. (It’s too late to do it after, unless you’ve taken a local strong reference to the delegate before removing.)

At least, this is what it sounds like.


_______________________________________________

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


  • Follow-Ups:
    • Re: How to safely delete a WebView delegate object?
      • From: Juanjo Conti <email@hidden>
References: 
 >How to safely delete a WebView delegate object? (From: Juanjo Conti <email@hidden>)

  • Prev by Date: How to safely delete a WebView delegate object?
  • Next by Date: How to remove iPad popover?
  • Previous by thread: How to safely delete a WebView delegate object?
  • Next by thread: Re: How to safely delete a WebView delegate object?
  • Index(es):
    • Date
    • Thread