2010-05-02 2 views
0

Pour une raison quelconque pour un faible nombre d'utilisateurs (par exemple 1 à quelques centaines) l'application semble se bloquer lorsqu'il est exécuté en mode 64 bits sur un Snow Leopard 10.6.3Sporadiques EXC_BAD_INSTRUCTION (SIGILL) lorsqu'il est en 64 bits mode

J'ai joint les traces de la pile. Le plantage semble être aléatoire dans com.apple.AppKit à des endroits aléatoires et des moments aléatoires. Quelqu'un d'autre a eu des expériences?

en utilisant le compilateur GCC de Xcode 3.2.2

crash # 1 utilisateur

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 

crash # 2 de même moments utilisateur plus tard

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 

Bizarrement la les plantages semblent disparaître pour ces utilisateurs lors de l'exécution du code en mode 32 bits.

Les accidents sont clairement déclenchées en mode 32 bits ne commencent juste après à l'intérieur du AppKit lui-même comme au plus profond du sommeil callstack NSThread.

D'autres ont vu devs même: http://lists.apple.com/archives/objc-language/2008/Sep/msg00111.html

ne peut pas envelopper ma tête pourquoi et si je peux obtenir plus d'informations de fond.

+3

* Jamais * soyez si certain que ce n'est pas votre code. –

+0

Normalement, je suis d'accord, mais les circonstances sont claires et si complètement aléatoires partout même si aucun code n'a été exécuté avant le démarrage ou après le clic d'un utilisateur pendant le traitement des clics AppKit. Regardez la première trace de pile. Crash juste après l'applaunch sans aucun code de mien en cours d'exécution. D'autres développeurs ont des problèmes similaires (googled) et ils sont revenus à 32 bits. Je suis 99,9% Bien sûr, ce n'est pas un problème de code, il suffit de vérifier la trace de pile de l'application. –

+0

Ajouté plus d'info. –

Répondre

0

En fin de compte, il a été causé par un fil de fond en essayant d'ouvrir une boîte de dialogue de feuille lorsque On était déjà ouvert. Je me suis assuré maintenant ceux qui sont mis en file d'attente et ouverts sur le fil de l'interface utilisateur.

1

J'ai ajouté une demande de soutien aux pommes et ils ont confirmé qu'il est un problème de Mac OS. Publiera plus d'informations si elles rapportent plus d'informations.