Is it possible to switch out the view controller that i disappearing with 
another one and see if that also disappears?

Is that view controller voiding its own self reference?

> On Sep 3, 2019, at 5:18 PM, Turtle Creek Software via Cocoa-dev 
> <cocoa-dev@lists.apple.com> wrote:
> 
> The app delegate is NOT being deallocated prematurely- we have a breakpoint
> there to check.
> 
> We don't allocate the app delegate explicitly, so I had to set a breakpoint
> in init() to see when it happens.
> It's created in main() via NSApplicationMain.  Presumably its end of scope
> would be when main ends.
> The MainMenu.xib includes a Delegate object for our GSAppDelegate class, so
> it must be allocated
> via the nib-loading process (the stack trace says InitWithCoder).
> 
> GSAppDelegate has strong references to 4 window controller members: main
> window, prefs window, and a couple of log windows.
> But that alone has not kept the main window controller alive.  We haven't
> tested the others.
> 
> The main window controller that was mysteriously dying used to have a
> strong reference back to the app delegate.
> Whether strong, weak or non-existent, it didn't make any difference.  I
> suppose we could add a strong ref somewhere else
> just to be double safe, but I'm not sure where else would make sense.
> 
> The startup code was created 3 years ago when we were new to Cocoa,
> probably from one of the HIllegass books.
> It may have flaws, but the app has been running OK otherwise.  The problems
> only started when we read about circular references
> and started making up-references __weak.
> 
> BTW the Clang specs for ARC mention that it's not exception-safe.  If I
> understand correctly,
> strong references will leak, and weak references are released.  We don't
> throw any Cocoa exceptions but
> maybe the system does.
> 
> Casey McDermott
> 
> On Tue, Sep 3, 2019 at 4:24 PM Jean-Daniel <mail...@xenonium.com> wrote:
> 
>> 
>>> Le 3 sept. 2019 à 02:33, Turtle Creek Software via Cocoa-dev <
>> cocoa-dev@lists.apple.com> a écrit :
>>> 
>>> Thanks for all the suggestions for the problems we had with a controller
>>> being
>>> deallocated unexpectedly under ARC.  Unfortunately, none of them fixed
>> it.
>>> 
>>> We do need to get back to regular app programming, so it will just stay a
>>> mystery.
>>> I was hoping we were doing something obviously dumb, but I guess the bug
>> is
>>> more subtle.
>>> 
>>> The app runs OK with the old code with multiple strong references to it
>>> They are circular references, but that controller sticks around for the
>>> full app lifetime.  Presumably any leakage
>>> won't happen until late in the game, anyhow.
>>> 
>>> Thanks,
>> 
>> Just a last suggestion. How is you App delegate created ? Do you keep a
>> strong ref on it. Else it will be deallocated and so will the controller.
>> 
>> 
> _______________________________________________
> 
> 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:
> https://lists.apple.com/mailman/options/cocoa-dev/zav%40mac.com
> 
> This email sent to z...@mac.com

_______________________________________________

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:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to