Re: NSWindowController retain count confusion
Re: NSWindowController retain count confusion
- Subject: Re: NSWindowController retain count confusion
- From: James Walker <email@hidden>
- Date: Tue, 30 Sep 2008 18:49:48 -0700
Patrick Mau wrote:
On 30.09.2008, at 04:30, James Walker wrote:
I have an NSWindowController subclass that is defined as File's Owner
in a nib. The window outlet is connected to a window, and the
delegate outlet of the window goes back to the File's Owner. I was
trying to release the controller in the windowWillClose: delegate
method, but it didn't cause the dealloc method to be called. I found
that immediately after creating the controller with alloc and init,
its retain count was 1, but as soon as I did [self window], the retain
count went up to 2. So, who's retaining the controller, and is it safe
to just release it twice?
I searched the list, and found some old messages about
NSWindowController retain counts being messed up by bindings, but I
don't have any bindings (yet).
Hallo Jamws
I've just started Cocoa Programming a few month back, so I'm no expert.
The documentation for
"(void)setReleasedWhenClosed:(BOOL)releasedWhenClosed" states:
"YES to specify that the receiver is to be hidden and released when it
receives a close message; NO to specify that the receiver is only
hidden, not released."
"Another strategy for releasing an NSWindow object is to have its
delegate autorelease it on receiving a windowShouldClose: message."
I'd try the second approach because you can control the behaviour at
close time.
I said I was calling release (since changed to autorelease) in the
windowWillClose method, which is pretty similar to autoreleasing on
windowShouldClose. Anyway, as I said elsewhere in this thread, that
turned out not to be the point.
--
James W. Walker, Innoventive Software LLC
<http://www.frameforge3d.com/>
_______________________________________________
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