• 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: Crash in KVO when using -keyPathsForValuesAffecting<Key>
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Crash in KVO when using -keyPathsForValuesAffecting<Key>


  • Subject: Re: Crash in KVO when using -keyPathsForValuesAffecting<Key>
  • From: Quincey Morris <email@hidden>
  • Date: Sat, 20 Jun 2009 11:56:03 -0700

On Jun 20, 2009, at 11:08, Jean-Daniel Dupas wrote:

- (void)dealloc {
 [_object release];
 [super dealloc];
}

Try changing this to:

- (void) dealloc {
	self.object = nil;
	[super dealloc];
}

'keyPathsForValuesAffectingName' is going to cause your wrapper to observe its MyObject (not the observation that you set up manually, but a different one set up internally). When the wrapper deallocs, there's apparently nothing to cause this internal observation to be removed, so the MyObject continues to be observed by a deallocated object. At least, that's my theory.

Note that if each wrapper had its own object (so the MyObject is a "attribute" of the wrapper), then [_object release] would actually dealloc the MyObject, which (if I've got things the right way round) would cause the unwanted observation to be removed automatically.

But you actually have a 1-1 relationship between the wrapper and the MyObject, so you kind of need to break the relationship before releasing the wrapper end of it.

_______________________________________________

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: Crash in KVO when using -keyPathsForValuesAffecting<Key>
      • From: Jean-Daniel Dupas <email@hidden>
    • Re: Crash in KVO when using -keyPathsForValuesAffecting<Key>
      • From: Quincey Morris <email@hidden>
References: 
 >Crash in KVO when using -keyPathsForValuesAffecting<Key> (From: Jean-Daniel Dupas <email@hidden>)

  • Prev by Date: Re: Crash in KVO when using -keyPathsForValuesAffecting<Key>
  • Next by Date: Re: Crash in KVO when using -keyPathsForValuesAffecting<Key>
  • Previous by thread: Re: Crash in KVO when using -keyPathsForValuesAffecting<Key>
  • Next by thread: Re: Crash in KVO when using -keyPathsForValuesAffecting<Key>
  • Index(es):
    • Date
    • Thread