OK, so while the drawer was in the broken state again, with the delegate wired 
in the nib, I poked it with the debugger again and found that, in order to fix 
it, I must first set the drawer's delegate to nil before setting it back to the 
window controller.  That is, this did not work:

(lldb) expr (void)[$1 setDelegate:$4] 

but this did:

(lldb) expr (void)[$1 setDelegate:nil] ;  (void)[$1 setDelegate:$4] 

Then, without doing anything to fix it but leaving the delegate wired up in the 
nib only, I scripted the app to launch 500 times with some random delays to 
open the window and the troublesome drawer and ran the script overnight.  
Result: all 500 good.  Then I added a new "fix", which is to do the "But this 
did" above, in code, 1.0 seconds after -awakeFromNib, and that passed 100 times.

So I've applied two credible fixes for this non-reproducible problem.  I hope 
it's fixed; need to move on.  Thanks again, Kyle.


_______________________________________________

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