Re: HELP! My app crashes on startup, with a very weird stack trace.
Re: HELP! My app crashes on startup, with a very weird stack trace.
- Subject: Re: HELP! My app crashes on startup, with a very weird stack trace.
- From: Jesper Storm Bache <email@hidden>
- Date: Tue, 2 Feb 2010 11:09:29 -0800
- Acceptlanguage: en-US
- Thread-topic: HELP! My app crashes on startup, with a very weird stack trace.
Are you sure you are seeing "unhandled exceptions", or simply "NSExceptions" that are handled somewhere inside the Ax framework.
If it is the latter, then you'll need to allow NSExceptions from inside the Ax framework to propagate to their handlers (also inside the Ax framework).
Note: Apple does *not* guarantee that their implementation is NSException free; you just should not see such exceptions being thrown back to your code.
For this reason I only enable NSException detection logic in my debug builds, and the current version of my debug handler is:
void ExceptionCallback(id exceptionObject)
{
bool doBreak = true;
if ([exceptionObject isKindOfClass:[NSException class]])
{
NSString* name = [exceptionObject name];
// Ignore exceptions from the accessibility framework because it uses
// exceptions for flow control
doBreak = ![name isEqualToString:NSAccessibilityException];
}
if (doBreak)
{
report_problem(...)
}
}
Jesper Storm Bache
On Feb 2, 2010, at 10:58 AM, Oleg Krupnov wrote:
> Thanks Ken,
>
> I don't quite understand your response though. What do you mean by
> "unexceptional exceptions"? How should I handle those exceptions, and
> why should I, if I don't make any calls to accessibility frameworks at
> all?
>
> The report I have included in the first post is all I have so far.
>
>
>
> On Tue, Feb 2, 2010 at 8:51 PM, Ken Ferry <email@hidden> wrote:
>> Hi Oleg,
>> Unfortunately, the accessibility mechanism uses unexceptional exceptions
>> under the hood. These are a normal part of operation. They shouldn't be
>> unhandled though… are you sure you're reporting what you think you are?
>> -Ken
>> On Tue, Feb 2, 2010 at 6:41 PM, Oleg Krupnov <email@hidden> wrote:
>>>
>>> Hi Corbin,
>>>
>>> Thanks for your quick response. You are right, I should have been more
>>> specific. This is not a "crash" in precise meaning. This is an
>>> unhandled exception raised by appkit's accessibility and caught by my
>>> crash reporter facility that prints the stack trace and sends it to me
>>> by e-mail. There is no real, severe crash like that one when you see
>>> the Apple's crash report dialog.
>>>
>>> The question is -- why this exception is raised? I don't even mention
>>> anything related to AX anywhere in my app. I must confess I have never
>>> even read the accessibility section of the docs and don't know what it
>>> is.
>>>
>>>> From the stack trace it appears that the exception occurs even before
>>> any of my own code is entered, somewhere in system frameworks.
>>>
>>> And it happens only on selected Macs.
>>>
>>> Do you have any idea?
>>>
>>> Thanks.
>>>
>>> On Tue, Feb 2, 2010 at 8:34 PM, Corbin Dunn <email@hidden> wrote:
>>>> Oleg,
>>>>
>>>> I think you are misinterpreting an exception being raised as a crash of
>>>> your application. The bt's below are not crashes; they are exceptions being
>>>> raised (and caught) by appkit's accessibility.
>>>>
>>>> I understand that you have a problem with your app crashing -- do you
>>>> have some actual crash reports? If so, reply with those to the list and we
>>>> may be able to help you.
>>>>
>>>> -corbin
>>>>
>>>> On Feb 2, 2010, at 10:04 AM, Oleg Krupnov wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> After publishing an update of my app, I have received quite a few
>>>>> crash dumps with very weird stack traces that I cannot understand and
>>>>> fix.
>>>>>
>>>>> Namely, the exception message says that AXTitle, or AXWindow or
>>>>> AXValue or AXDocument etc. is unsupported by NSWindow, NSOpenPanel,
>>>>> NSApplication and others. Does it have something to do with
>>>>> accessibility? In what way?
>>>>>
>>>>> If someone knows what's that supposed to mean, a quick response would
>>>>> be very much appreciated. This is an emergency for me.
>>>>>
>>>>> Here's one of those logs (All those users are running Snow Leopard
>>>>> 10.6.2):
>>>>>
>>>>> MESSAGE:
>>>>> "AXTitle" attribute unsupported by: <NSOpenPanel: 0x5bb190>
>>>>>
>>>>> STACK TRACE:
>>>>> #0 0x98b80d24 NSExceptionHandlerExceptionRaiser()
>>>>>
>>>>> (/System/Library/Frameworks/ExceptionHandling.framework/Versions/A/ExceptionHandling)
>>>>> #1 0x94bc5509 objc_exception_throw() (/usr/lib/libobjc.A.dylib)
>>>>> #2 0x97a91a21 +[NSException raise]
>>>>>
>>>>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
>>>>> #3 0x91d9a55c NSAccessibilityAttributeValue()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #4 0x91fb243f CopyAppKitUIElementAttributeValueNoCatch()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #5 0x91fb49d7 CopyAttributeValue()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #6 0x9476bad3 _AXXMIGCopyAttributeValue()
>>>>>
>>>>> (/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices)
>>>>> #7 0x94775b96 _XCopyAttributeValue()
>>>>>
>>>>> (/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices)
>>>>> #8 0x94747c39 mshMIGPerform()
>>>>>
>>>>> (/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices)
>>>>> #9 0x979b28db __CFRunLoopRun()
>>>>>
>>>>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
>>>>> #10 0x979b0864 CFRunLoopRunSpecific()
>>>>>
>>>>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
>>>>> #11 0x979b0691 CFRunLoopRunInMode()
>>>>>
>>>>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
>>>>> #12 0x973c9f0c RunCurrentEventLoopInMode()
>>>>>
>>>>> (/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox)
>>>>> #13 0x973c9cc3 ReceiveNextEventCommon()
>>>>>
>>>>> (/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox)
>>>>> #14 0x973c9b48 BlockUntilNextEventMatchingListInMode()
>>>>>
>>>>> (/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox)
>>>>> #15 0x91d4eac5 _DPSNextEvent()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #16 0x91d4e306 -[NSApplication
>>>>> nextEventMatchingMask:untilDate:inMode:dequeue:]()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #17 0x13a2754b +[NSApplication
>>>>> nextEventMatchingMask:untilDate:inMode:dequeue:]
>>>>> (/Library/PreferencePanes/Smart Scroll.prefPane/Contents/MacOS/Smart
>>>>> Scroll.bundle/Contents/MacOS/Smart Scroll)
>>>>> #18 0x91d1049f +[NSApplication run]
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #19 0x91d08535 NSApplicationMain()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #20 0x0022ca start()
>>>>> (/Applications/DaisyDisk.app/Contents/MacOS/DaisyDisk)
>>>>> #21 0x000002 ??() (??)
>>>>>
>>>>> Here is another:
>>>>>
>>>>> MESSAGE:
>>>>> "AXValue" attribute unsupported by: <NSButtonCell: 0x5cd0d0>
>>>>>
>>>>> STACK TRACE:
>>>>> #0 0x95d86d24 NSExceptionHandlerExceptionRaiser()
>>>>>
>>>>> (/System/Library/Frameworks/ExceptionHandling.framework/Versions/A/ExceptionHandling)
>>>>> #1 0x9212d509 objc_exception_throw() (/usr/lib/libobjc.A.dylib)
>>>>> #2 0x94dcba21 +[NSException raise]
>>>>>
>>>>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
>>>>> #3 0x938de55c NSAccessibilityAttributeValue()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #4 0x93af643f CopyAppKitUIElementAttributeValueNoCatch()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #5 0x93af89d7 CopyAttributeValue()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #6 0x90b34ad3 _AXXMIGCopyAttributeValue()
>>>>>
>>>>> (/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices)
>>>>> #7 0x90b3eb96 _XCopyAttributeValue()
>>>>>
>>>>> (/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices)
>>>>> #8 0x90b10c39 mshMIGPerform()
>>>>>
>>>>> (/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices)
>>>>> #9 0x94cec8db __CFRunLoopRun()
>>>>>
>>>>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
>>>>> #10 0x94cea864 CFRunLoopRunSpecific()
>>>>>
>>>>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
>>>>> #11 0x94cea691 CFRunLoopRunInMode()
>>>>>
>>>>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
>>>>> #12 0x98525f0c RunCurrentEventLoopInMode()
>>>>>
>>>>> (/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox)
>>>>> #13 0x98525bff ReceiveNextEventCommon()
>>>>>
>>>>> (/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox)
>>>>> #14 0x98525b48 BlockUntilNextEventMatchingListInMode()
>>>>>
>>>>> (/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox)
>>>>> #15 0x93892ac5 _DPSNextEvent()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #16 0x93892306 +[NSApplication
>>>>> nextEventMatchingMask:untilDate:inMode:dequeue:]
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #17 0x9385449f +[NSApplication run]
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #18 0x9384c535 NSApplicationMain()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #19 0x0022ca start()
>>>>> (/Applications/DaisyDisk.app/Contents/MacOS/DaisyDisk)
>>>>> #20 0x000002 ??() (??)
>>>>>
>>>>> Here's yet another:
>>>>>
>>>>> MESSAGE:
>>>>> "AXValue" attribute unsupported by: <MainWindow: 0x227270>
>>>>>
>>>>> STACK TRACE:
>>>>> #0 0x95d86d24 NSExceptionHandlerExceptionRaiser()
>>>>>
>>>>> (/System/Library/Frameworks/ExceptionHandling.framework/Versions/A/ExceptionHandling)
>>>>> #1 0x9212d509 objc_exception_throw() (/usr/lib/libobjc.A.dylib)
>>>>> #2 0x94dcba21 +[NSException raise]
>>>>>
>>>>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
>>>>> #3 0x938de55c NSAccessibilityAttributeValue()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #4 0x93af643f CopyAppKitUIElementAttributeValueNoCatch()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #5 0x93af89d7 CopyAttributeValue()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #6 0x90b34ad3 _AXXMIGCopyAttributeValue()
>>>>>
>>>>> (/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices)
>>>>> #7 0x90b3eb96 _XCopyAttributeValue()
>>>>>
>>>>> (/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices)
>>>>> #8 0x90b10c39 mshMIGPerform()
>>>>>
>>>>> (/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices)
>>>>> #9 0x94cec8db __CFRunLoopRun()
>>>>>
>>>>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
>>>>> #10 0x94cea864 CFRunLoopRunSpecific()
>>>>>
>>>>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
>>>>> #11 0x94cea691 CFRunLoopRunInMode()
>>>>>
>>>>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
>>>>> #12 0x98525f0c RunCurrentEventLoopInMode()
>>>>>
>>>>> (/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox)
>>>>> #13 0x98525cc3 ReceiveNextEventCommon()
>>>>>
>>>>> (/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox)
>>>>> #14 0x98525b48 BlockUntilNextEventMatchingListInMode()
>>>>>
>>>>> (/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox)
>>>>> #15 0x93892ac5 _DPSNextEvent()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #16 0x93892306 +[NSApplication
>>>>> nextEventMatchingMask:untilDate:inMode:dequeue:]
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #17 0x9385449f +[NSApplication run]
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #18 0x9384c535 NSApplicationMain()
>>>>> (/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
>>>>> #19 0x0022ca start()
>>>>> (/Applications/DaisyDisk.app/Contents/MacOS/DaisyDisk)
>>>>> #20 0x000002 ??() (??)
>>>>>
>>>>> Thanks!
>>>>
>>>>
>>> _______________________________________________
>>>
>>> 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
>>
>>
> _______________________________________________
>
> 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
_______________________________________________
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