crash on OS X when popover closes

6 views
Skip to first unread message

Martin Hewitson

unread,
Apr 1, 2012, 12:38:59 PM4/1/12
to cocoa-dev Dev
Dear list,

I've received a crash report from a customer which I'm unable to reproduce and have not heard of from any other user. The action needed for the customer to reproduce the crash is such a common one, that it seems that all other customers should hit the same issue. That makes me wonder if it's a problem of the customer's machine. The crash log is below.

Does anyone have any suggestions as to how I might find the problem?

Best wishes,

Martin


OS Version: Mac OS X 10.7.3 (11D50b)

Application Specific Information:
objc[11323]: garbage collection is OFF
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSRecursiveLock popoverDidClose:]: unrecognized selector sent to instance 0x1020e2a80'
*** First throw call stack:
(
0 CoreFoundation 0x00007fff8a9bcfc6 __exceptionPreprocess + 198
1 libobjc.A.dylib 0x00007fff8615bd5e objc_exception_throw + 43
2 CoreFoundation 0x00007fff8aa492ae -[NSObject doesNotRecognizeSelector:] + 190
3 CoreFoundation 0x00007fff8a9a9e73 ___forwarding___ + 371
4 CoreFoundation 0x00007fff8a9a9c88 _CF_forwarding_prep_0 + 232
5 Foundation 0x00007fff8d029d32 __-[NSNotificationCenter addObserver:selector:name:object:]_block_invoke_1 + 47
6 CoreFoundation 0x00007fff8a965aaa _CFXNotificationPost + 2634
7 AppKit 0x00007fff877f586d _NSPopoverSendDidCloseNotification + 154
8 AppKit 0x00007fff877f70a6 -[NSPopover _finishClosingAndShouldNotify:] + 60


Kyle Sluder

unread,
Apr 1, 2012, 1:03:05 PM4/1/12
to Martin Hewitson, cocoa-dev Dev
On Apr 1, 2012, at 9:38 AM, Martin Hewitson <martin....@aei.mpg.de> wrote:

> Dear list,
>
> I've received a crash report from a customer which I'm unable to reproduce and have not heard of from any other user. The action needed for the customer to reproduce the crash is such a common one, that it seems that all other customers should hit the same issue. That makes me wonder if it's a problem of the customer's machine. The crash log is below.
>
> Does anyone have any suggestions as to how I might find the problem?

Does it involve displayi g a popover from a fullscreen window and swiping away and back using the trackpad gesture? We had a reproducible crasher from the Dictionary popover in this circumstance.

--Kyle Sluder
_______________________________________________

Cocoa-dev mailing list (Coco...@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/cocoa-dev-garchive-98506%40googlegroups.com

This email sent to cocoa-dev-ga...@googlegroups.com

Martin Hewitson

unread,
Apr 1, 2012, 1:13:33 PM4/1/12
to Kyle Sluder, cocoa-dev Dev
Not sure. I'll ask the customer. That's a bit the problem at the moment - I'm unsure what to ask them to do next.

Thanks for the idea,

Martin

On Apr 1, 2012, at 07:03 PM, Kyle Sluder wrote:

> On Apr 1, 2012, at 9:38 AM, Martin Hewitson <martin....@aei.mpg.de> wrote:
>
>> Dear list,
>>
>> I've received a crash report from a customer which I'm unable to reproduce and have not heard of from any other user. The action needed for the customer to reproduce the crash is such a common one, that it seems that all other customers should hit the same issue. That makes me wonder if it's a problem of the customer's machine. The crash log is below.
>>
>> Does anyone have any suggestions as to how I might find the problem?
>
> Does it involve displayi g a popover from a fullscreen window and swiping away and back using the trackpad gesture? We had a reproducible crasher from the Dictionary popover in this circumstance.
>
> --Kyle Sluder

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Martin Hewitson
Albert-Einstein-Institut
Max-Planck-Institut fuer
Gravitationsphysik und Universitaet Hannover
Callinstr. 38, 30167 Hannover, Germany
Tel: +49-511-762-17121, Fax: +49-511-762-5861
E-Mail: martin....@aei.mpg.de
WWW: http://www.aei.mpg.de/~hewitson
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Ken Thomases

unread,
Apr 1, 2012, 4:54:17 PM4/1/12
to Martin Hewitson, cocoa-dev Dev
On Apr 1, 2012, at 11:38 AM, Martin Hewitson wrote:

> I've received a crash report from a customer which I'm unable to reproduce and have not heard of from any other user. The action needed for the customer to reproduce the crash is such a common one, that it seems that all other customers should hit the same issue. That makes me wonder if it's a problem of the customer's machine. The crash log is below.
>
> Does anyone have any suggestions as to how I might find the problem?

> *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSRecursiveLock popoverDidClose:]: unrecognized selector sent to instance 0x1020e2a80'

This suggests a memory management bug. Something is invoking -popoverDidClose: on an NSRecursiveLock, which surely isn't what was supposed to receive that message. Usually this happens because the object that was supposed to receive it has been deallocated and another object (an NSRecursiveLock, in this case) has reused that memory.

The particular memory management bug may be an over-release (or failure to retain), but it could also be a failure to unregister an object from observing a notification prior to its deallocation. In this case, it seems as though you failed to unset the delegate of the NSPopover prior to the delegate's deallocation. (The NSPopover registers the delegate as an observer of NSPopoverDidCloseNotification and would unregister it when you unset the delegate.)

Regards,
Ken

Alex Zavatone

unread,
Apr 1, 2012, 8:54:53 PM4/1/12
to Ken Thomases, cocoa-dev Dev

On Apr 1, 2012, at 4:54 PM, Ken Thomases wrote:

> On Apr 1, 2012, at 11:38 AM, Martin Hewitson wrote:
>
>> I've received a crash report from a customer which I'm unable to reproduce and have not heard of from any other user. The action needed for the customer to reproduce the crash is such a common one, that it seems that all other customers should hit the same issue. That makes me wonder if it's a problem of the customer's machine. The crash log is below.
>>
>> Does anyone have any suggestions as to how I might find the problem?
>
>> *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSRecursiveLock popoverDidClose:]: unrecognized selector sent to instance 0x1020e2a80'

It looks like the popup may have already been deallocated. That's where my money is.

Reply all
Reply to author
Forward
0 new messages