2010-05-02 128 views
0

由於某些原因,對於少數用戶(例如幾百個中的1),應用程序似乎在Snow Leopard上以64位模式運行時崩潰10.6.364位模式下的零星EXC_BAD_INSTRUCTION(SIGILL)

我附加了堆棧跟蹤。 崩潰似乎是隨機的com.apple.AppKit隨機位置和隨機時刻。 任何人有任何經驗?

使用Xcode中的編譯器GCC 3.2.2

崩潰的用戶#1

Code Type:  X86-64 (Native) 
Parent Process: launchd [90] 

Date/Time:  2010-05-02 04:12:59.708 -0500 
OS Version:  Mac OS X 10.6.3 (10D573) 
Report Version: 6 

Exception Type: EXC_BAD_INSTRUCTION (SIGILL) 
Exception Codes: 0x0000000000000001, 0x0000000000000000 
Crashed Thread: 0 Dispatch queue: com.apple.main-thread 

Application Specific Information: 
objc[232]: alt handlers in objc runtime are buggy! 

Thread 0 Crashed: Dispatch queue: com.apple.main-thread 
0 libobjc.A.dylib    0x00007fff874dd8b7 _objc_fatal + 238 
1 libobjc.A.dylib    0x00007fff874de57c objc_addExceptionHandler + 1026 
2 com.apple.CoreFoundation  0x00007fff83914212 _CFDoExceptionOperation + 402 
3 com.apple.AppKit    0x00007fff87afc55d _NSAppKitLock + 79 
4 com.apple.AppKit    0x00007fff87bd1f93 +[NSColorList _findColorListNamed:forDeviceType:] + 86 
5 com.apple.AppKit    0x00007fff87b9d304 -[NSCatalogColor colorUsingColorSpaceName:device:] + 255 
6 com.apple.AppKit    0x00007fff87c985ad -[NSLayoutManager(NSPrivate) _drawGlyphsForGlyphRange:atPoint:parameters:] + 4764 
7 com.apple.AppKit    0x00007fff87c5d79c -[NSTextView drawRect:] + 1839 
8 com.apple.AppKit    0x00007fff87c5ce2e -[NSTextView _drawRect:clip:] + 2343 
9 com.apple.AppKit    0x00007fff87be4485 -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:] + 1325 
10 com.apple.AppKit    0x00007fff87be47ef -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:] + 2199 
11 com.apple.AppKit    0x00007fff87be2b57 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 767 
12 com.apple.AppKit    0x00007fff87be3a23 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 4555 
13 com.apple.AppKit    0x00007fff87be3a23 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 4555 
14 com.apple.AppKit    0x00007fff87be3a23 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 4555 
15 com.apple.AppKit    0x00007fff87be3a23 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 4555 
16 com.apple.AppKit    0x00007fff87be3a23 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 4555 
17 com.apple.AppKit    0x00007fff87be3a23 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 4555 
18 com.apple.AppKit    0x00007fff87be3a23 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 4555 
19 com.apple.AppKit    0x00007fff87be3a23 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 4555 
20 com.apple.AppKit    0x00007fff87be2678 -[NSThemeFrame _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 254 
21 com.apple.AppKit    0x00007fff87bdef27 -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 2683 
22 com.apple.AppKit    0x00007fff87b58777 -[NSView displayIfNeeded] + 969 
23 com.apple.AppKit    0x00007fff87b53622 _handleWindowNeedsDisplay + 678 
24 com.apple.Foundation   0x00007fff8600fa4d __NSFireTimer + 114 
25 com.apple.CoreFoundation  0x00007fff83908708 __CFRunLoopRun + 6488 
26 com.apple.CoreFoundation  0x00007fff839068df CFRunLoopRunSpecific + 575 
27 com.apple.HIToolbox   0x00007fff821b5ada RunCurrentEventLoopInMode + 333 
28 com.apple.HIToolbox   0x00007fff821b58df ReceiveNextEventCommon + 310 
29 com.apple.HIToolbox   0x00007fff821b5798 BlockUntilNextEventMatchingListInMode + 59 
30 com.apple.AppKit    0x00007fff87b28a2a _DPSNextEvent + 708 
31 com.apple.AppKit    0x00007fff87b28379 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 155 
32 com.apple.AppKit    0x00007fff87d37060 -[NSTextView mouseDown:] + 8426 
33 com.apple.AppKit    0x00007fff87c21f1b -[NSWindow sendEvent:] + 5409 
34 com.apple.AppKit    0x00007fff87b57662 -[NSApplication sendEvent:] + 4719 
35 com.apple.AppKit    0x00007fff87aee0aa -[NSApplication run] + 474 
36 com.apple.AppKit    0x00007fff87ae6d7c NSApplicationMain + 364 
37 com.NZBVortex.NZBVortex  0x0000000100000fe0 start + 52 

崩潰#2來自同一用戶片刻之後

Code Type:  X86-64 (Native) 
Parent Process: launchd [76] 

Date/Time:  2010-05-02 11:59:33.226 +0200 
OS Version:  Mac OS X 10.6.3 (10D573) 
Report Version: 6 

Exception Type: EXC_BAD_INSTRUCTION (SIGILL) 
Exception Codes: 0x0000000000000001, 0x0000000000000000 
Crashed Thread: 0 Dispatch queue: com.apple.main-thread 

Application Specific Information: 
objc[4360]: alt handlers in objc runtime are buggy! 

Thread 0 Crashed: Dispatch queue: com.apple.main-thread 
0 libobjc.A.dylib    0x00007fff8015d8b7 _objc_fatal + 238 
1 libobjc.A.dylib    0x00007fff8015e57c objc_addExceptionHandler + 1026 
2 com.apple.CoreFoundation  0x00007fff85367212 _CFDoExceptionOperation + 402 
3 com.apple.AppKit    0x00007fff840b5f2f -[NSViewHierarchyLock lockForReadingWithExceptionHandler:] + 478 
4 com.apple.AppKit    0x00007fff8420753e -[NSConcreteTextStorage _lockForReading] + 243 
5 com.apple.AppKit    0x00007fff841e1449 -[NSLayoutManager(NSPrivate) _fillGlyphHoleForCharacterRange:startGlyphIndex:desiredNumberOfCharacters:] + 320 
6 com.apple.AppKit    0x00007fff840e204a _NSFastFillAllGlyphHolesForGlyphRange + 719 
7 com.apple.AppKit    0x00007fff841e10e2 _NSFastFillAllLayoutHolesUpToEndOfContainerForGlyphIndex + 653 
8 com.apple.AppKit    0x00007fff841e0c72 -[NSLayoutManager textContainerForGlyphAtIndex:effectiveRange:] + 243 
9 com.apple.AppKit    0x00007fff840f6786 -[NSLayoutManager glyphRangeForTextContainer:] + 286 
10 com.apple.AppKit    0x00007fff846664a9 -[NSToolTipStringDrawingLayoutManager _sizeWithSize:attributedString:] + 883 
11 com.apple.AppKit    0x00007fff84665dad +[NSToolTipStringDrawingLayoutManager sizeForDisplayingAttributedString:] + 354 
12 com.apple.AppKit    0x00007fff84667292 -[NSToolTipManager displayToolTip:] + 616 
13 com.apple.AppKit    0x00007fff846657d4 toolTipTimerFired + 114 
14 com.apple.CoreFoundation  0x00007fff8535b708 __CFRunLoopRun + 6488 
15 com.apple.CoreFoundation  0x00007fff853598df CFRunLoopRunSpecific + 575 
16 com.apple.HIToolbox   0x00007fff88510ada RunCurrentEventLoopInMode + 333 
17 com.apple.HIToolbox   0x00007fff885108df ReceiveNextEventCommon + 310 
18 com.apple.HIToolbox   0x00007fff88510798 BlockUntilNextEventMatchingListInMode + 59 
19 com.apple.AppKit    0x00007fff840d1a2a _DPSNextEvent + 708 
20 com.apple.AppKit    0x00007fff840d1379 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 155 
21 com.apple.AppKit    0x00007fff8409705b -[NSApplication run] + 395 
22 com.apple.AppKit    0x00007fff8408fd7c NSApplicationMain + 364 
23 com.NZBVortex.NZBVortex  0x0000000100000fe0 start + 52 

古怪足夠在32位模式下運行代碼時,這些用戶崩潰似乎會消失。

只有在AppKit本身內部啓動後,才能清楚地在32位模式下觸發崩潰,就像深入NSThread睡眠的調用堆棧一樣。

其他一些開發者已經看到了相同的: http://lists.apple.com/archives/objc-language/2008/Sep/msg00111.html

不能完成我的周圍爲什麼和頭部,如果我能得到更多的背景資料。

+3

*永遠不要*是如此確定,它不是你的代碼。 – 2010-05-02 10:42:27

+0

通常情況下,我同意,但在AppKit點擊處理期間,即使在開始期間或者用戶點擊之後沒有任何代碼已經運行,環境仍然清晰且完全隨機。 看看第一個堆棧跟蹤。在applaunch之後發生崩潰,沒有任何我的代碼運行。 其他開發者也有類似的問題(谷歌搜索),他們只是恢復到32位。 我99.9%確認這不是代碼問題,只需檢查應用程序堆棧跟蹤。 – 2010-05-02 10:58:26

+0

添加了更多信息。 – 2010-05-02 11:05:19

回答

0

最後它是由後臺線程在 打開一個表單對話框導致的。我已經確定,現在這些排隊並在UI線程上打開。

這是一個非常困難的追查

1

我已經添加了蘋果支持請求,他們確認這是Mac OS問題。 如果他們報告更多信息,他們會發布更多信息。

相關問題