Project: SWT
Bug 341402 SWT Cocoa crash in 3.7M6
Reported: 2011-03-30 13:42:24 | Status: resolved fixed

I just captured the following crash with 3.7M6. The crash happened shortly after I saved an editor and not in direct response to an action. Process: eclipse [65988] Path: /Users/bhunt/Applications/Eclipse/3.7 M6/Eclipse.app/Contents/MacOS/eclipse Identifier: org.eclipse.eclipse Version: 3.6 (3.6) Code Type: X86-64 (Native) Parent Process: ??? [1] Date/Time: 2011-03-30 12:35:12.370 -0500 OS Version: Mac OS X 10.6.7 (10J869) Report Version: 6 Interval Since Last Report: 444333 sec Crashes Since Last Report: 4 Per-App Interval Since Last Report: 393587 sec Per-App Crashes Since Last Report: 2 Anonymous UUID: 7397DCB5-F728-41C7-9027-04BA5F045F3C Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000028 Crashed Thread: 0 Dispatch queue: com.apple.main-thread Application Specific Information: objc_msgSend() selector name: respondsToSelector: Java information: Exception type: Bus Error (0xa) at pc=7fff8765b1d8 Java VM: Java HotSpot(TM) 64-Bit Server VM (19.1-b02-334 mixed mode macosx-amd64) Current thread (11f801000): JavaThread "main" [_thread_in_native, id=1893792928, stack(7fff5f400000,7fff5fc00000)] Stack: [7fff5f400000,7fff5fc00000] Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) j org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Lorg/eclipse/swt/internal/cocoa/objc_super;JJJJZ)J+0 j org.eclipse.swt.widgets.Display.applicationNextEventMatchingMask(JJJJJJ)J+77 j org.eclipse.swt.widgets.Display.applicationProc(JJJJJJ)J+93 v ~StubRoutines::call_stub j org.eclipse.swt.internal.cocoa.OS.objc_msgSend(JJJJJZ)J+0 j org.eclipse.swt.internal.cocoa.NSApplication.nextEventMatchingMask(JLorg/eclipse/swt/internal/cocoa/NSDate;Lorg/eclipse/swt/internal/cocoa/NSString;Z)Lorg/eclipse/swt/internal/cocoa/NSEvent;+36 j org.eclipse.swt.widgets.Display.readAndDispatch()Z+98 j org.eclipse.ui.internal.Workbench.runEventLoop(Lorg/eclipse/jface/window/Window$IExceptionHandler;Lorg/eclipse/swt/widgets/Display;)V+9 j org.eclipse.ui.internal.Workbench.runUI()I+555 j org.eclipse.ui.internal.Workbench.access$4(Lorg/eclipse/ui/internal/Workbench;)I+1 j org.eclipse.ui.internal.Workbench$7.run()V+55 j org.eclipse.core.databinding.observable.Realm.runWithDefault(Lorg/eclipse/core/databinding/observable/Realm;Ljava/lang/Runnable;)V+12 j org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Lorg/eclipse/swt/widgets/Display;Lorg/eclipse/ui/application/WorkbenchAdvisor;)I+18 j org.eclipse.ui.PlatformUI.createAndRunWorkbench(Lorg/eclipse/swt/widgets/Display;Lorg/eclipse/ui/application/WorkbenchAdvisor;)I+2 j org.eclipse.ui.internal.ide.application.IDEApplication.start(Lorg/eclipse/equinox/app/IApplicationContext;)Ljava/lang/Object;+108 j org.eclipse.equinox.internal.app.EclipseAppHandle.run(Ljava/lang/Object;)Ljava/lang/Object;+135 j org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(Ljava/lang/Object;)Ljava/lang/Object;+103 j org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(Ljava/lang/Object;)Ljava/lang/Object;+29 j org.eclipse.core.runtime.adaptor.EclipseStarter.run(Ljava/lang/Object;)Ljava/lang/Object;+149 j org.eclipse.core.runtime.adaptor.EclipseStarter.run([Ljava/lang/String;Ljava/lang/Runnable;)Ljava/lang/Object;+183 v ~StubRoutines::call_stub j sun.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+0 j sun.reflect.NativeMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+87 j sun.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+6 j java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+161 j org.eclipse.equinox.launcher.Main.invokeFramework([Ljava/lang/String;[Ljava/net/URL;)V+211 j org.eclipse.equinox.launcher.Main.basicRun([Ljava/lang/String;)V+126 j org.eclipse.equinox.launcher.Main.run([Ljava/lang/String;)I+4 v ~StubRoutines::call_stub Java Threads: ( => current thread ) 11fbf4800 JavaThread "[ThreadPool Manager] - Idle Thread" daemon [_thread_blocked, id=881635328, stack(1347cb000,1348cb000)] 12b857000 JavaThread "Worker-16" [_thread_blocked, id=903159808, stack(135c52000,135d52000)] 12d8e1000 JavaThread "Worker-15" [_thread_blocked, id=902098944, stack(135b4f000,135c4f000)] 120a73000 JavaThread "Worker-14" [_thread_blocked, id=901038080, stack(135a4c000,135b4c000)] 11fc4f800 JavaThread "Worker-13" [_thread_blocked, id=899977216, stack(135949000,135a49000)] 132920800 JavaThread "Worker-12" [_thread_blocked, id=898916352, stack(135846000,135946000)] 11ffa8000 JavaThread "Worker-11" [_thread_blocked, id=896282624, stack(1355c3000,1356c3000)] 132920000 JavaThread "Worker-10" [_thread_blocked, id=893190144, stack(1352d0000,1353d0000)] 12e84d000 JavaThread "Worker-9" [_thread_blocked, id=892129280, stack(1351cd000,1352cd000)] 11ff29800 JavaThread "Worker-8" [_thread_blocked, id=889995264, stack(134fc4000,1350c4000)] 12d040000 JavaThread "Worker-7" [_thread_blocked, id=888934400, stack(134ec1000,134fc1000)] 12f8ea000 JavaThread "Worker-6" [_thread_blocked, id=887873536, stack(134dbe000,134ebe000)] 12f8cf800 JavaThread "Worker-5" [_thread_blocked, id=886075392, stack(134c07000,134d07000)] 12e842800 JavaThread "Worker-4" [_thread_blocked, id=885014528, stack(134b04000,134c04000)] 11faa2800 JavaThread "Worker-3" [_thread_blocked, id=883953664, stack(134a01000,134b01000)] 13291f000 JavaThread "Worker-2" [_thread_blocked, id=835252224, stack(131b8f000,131c8f000)] 12b8f4800 JavaThread "Worker-1" [_thread_blocked, id=796409856, stack(12f684000,12f784000)] 120db1800 JavaThread "Java indexing" daemon [_thread_blocked, id=868118528, stack(133ae7000,133be7000)] 11ffb7800 JavaThread "com.google.inject.internal.util.$Finalizer" daemon [_thread_blocked, id=865079296, stack(133801000,133901000)] 12a994800 JavaThread "Thread-6" [_thread_in_native, id=828026880, stack(1314ab000,1315ab000)] 1209d4800 JavaThread "Collaboration Service Job Manager" [_thread_blocked, id=836378624, stack(131ca2000,131da2000)] 120cc0800 JavaThread "Worker-0" [_thread_blocked, id=790630400, stack(12f101000,12f201000)] 1209ee000 JavaThread "Worker-JM" [_thread_blocked, id=825827328, stack(131292000,131392000)] 12b8f7000 JavaThread "[Timer] - Main Queue Handler" daemon [_thread_blocked, id=794824704, stack(12f501000,12f601000)] 12b87a800 JavaThread "Framework Event Dispatcher" daemon [_thread_blocked, id=779063296, stack(12e5f9000,12e6f9000)] 11fb03800 JavaThread "Start Level Event Dispatcher" daemon [_thread_blocked, id=777674752, stack(12e4a6000,12e5a6000)] 12b80a800 JavaThread "State Data Manager" daemon [_thread_blocked, id=776335360, stack(12e35f000,12e45f000)] 12b80f000 JavaThread "Framework Active Thread" [_thread_blocked, id=774774784, stack(12e1e2000,12e2e2000)] 12b810000 JavaThread "Poller SunPKCS11-Darwin" daemon [_thread_blocked, id=724570112, stack(12b201000,12b301000)] 11f97a800 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=697307136, stack(129801000,129901000)] 11f979800 JavaThread "CompilerThread1" daemon [_thread_blocked, id=694198272, stack(12950a000,12960a000)] 11f979000 JavaThread "CompilerThread0" daemon [_thread_blocked, id=693137408, stack(129407000,129507000)] 11f978000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=692076544, stack(129304000,129404000)] 11f977800 JavaThread "Surrogate Locker Thread (CMS)" daemon [_thread_blocked, id=691015680, stack(129201000,129301000)] 11f96e800 JavaThread "Finalizer" daemon [_thread_blocked, id=687923200, stack(128f0e000,12900e000)] 11f96e000 JavaThread "Reference Handler" daemon [_thread_blocked, id=686862336, stack(128e0b000,128f0b000)] =>11f801000 JavaThread "main" [_thread_in_native, id=1893792928, stack(7fff5f400000,7fff5fc00000)] Other Threads: 11f969800 VMThread [stack: 128d08000,128e08000] [id=685801472] 11f98c000 WatcherThread [stack: 129b01000,129c01000] [id=700452864] VM state:not at safepoint (normal execution) VM Mutex/Monitor currently owned by a thread: None Heap par new generation total 19136K, used 12722K [7d0000000, 7d14c0000, 7d4000000) eden space 17024K, 74% used [7d0000000, 7d0c6cb40, 7d10a0000) from space 2112K, 0% used [7d12b0000, 7d12b0000, 7d14c0000) to space 2112K, 0% used [7d10a0000, 7d10a0000, 7d12b0000) concurrent mark-sweep generation total 90476K, used 49442K [7d4000000, 7d985b000, 7f0000000) concurrent-mark-sweep perm gen total 205836K, used 123612K [7f0000000, 7fc903000, 800000000) Virtual Machine Arguments: JVM Args: -Xms40m -Xmx512m -Xdock:icon=../Resources/Eclipse.icns -XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts -XX:MaxPermSize=256m Java Command: <unknown> Launcher Type: generic Physical Memory: Page Size = 4k, Total = 8192M, Free = 981M Thread 0 Crashed: Dispatch queue: com.apple.main-thread 0 libobjc.A.dylib 0x00007fff8765b1d8 objc_msgSend_vtable5 + 16 1 com.apple.AppKit 0x00007fff84732e02 -[NSToolTipManager displayToolTip:] + 332 2 com.apple.AppKit 0x00007fff84731460 toolTipTimerFired + 114 3 com.apple.CoreFoundation 0x00007fff8225dbe8 __CFRunLoopRun + 6488 4 com.apple.CoreFoundation 0x00007fff8225bdbf CFRunLoopRunSpecific + 575 5 com.apple.HIToolbox 0x00007fff866197ee RunCurrentEventLoopInMode + 333 6 com.apple.HIToolbox 0x00007fff86619551 ReceiveNextEventCommon + 148 7 com.apple.HIToolbox 0x00007fff866194ac BlockUntilNextEventMatchingListInMode + 59 8 com.apple.AppKit 0x00007fff8419ce64 _DPSNextEvent + 718 9 com.apple.AppKit 0x00007fff8419c7a9 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 155 10 libswt-pi-cocoa-3724.jnilib 0x000000012e19022e Java_org_eclipse_swt_internal_cocoa_OS_objc_1msgSendSuper__Lorg_eclipse_swt_internal_cocoa_objc_1super_2JJJJZ + 122 11 ??? 0x0000000121011cc8 0 + 4848688328 12 ??? 0x0000000121006929 0 + 4848642345 13 ??? 0x0000000121006929 0 + 4848642345 14 ??? 0x0000000121001438 0 + 4848620600 15 libclient64.dylib 0x000000011e1dfda7 JVM_Lseek + 181440 16 libclient64.dylib 0x000000011e1dfb7a JVM_Lseek + 180883 17 libclient64.dylib 0x000000011e202af1 JVM_FindLoadedClass + 3535 18 libclient64.dylib 0x000000011e34a067 JVM_Sync + 3034 19 libswt-cocoa-3724.jnilib 0x000000012908ef92 callback + 1344 20 libswt-cocoa-3724.jnilib 0x0000000129074525 fn3_6 + 90 21 libswt-pi-cocoa-3724.jnilib 0x000000012e18c0e0 Java_org_eclipse_swt_internal_cocoa_OS_objc_1msgSend__JJJJJZ + 79 22 ??? 0x0000000121011cc8 0 + 4848688328 23 ??? 0x0000000121006929 0 + 4848642345 24 ??? 0x00000001210069b3 0 + 4848642483 25 ??? 0x0000000121006a82 0 + 4848642690 26 ??? 0x000000012100685a 0 + 4848642138 27 ??? 0x000000012100696e 0 + 4848642414 28 ??? 0x000000012100696e 0 + 4848642414 29 ??? 0x0000000121006d34 0 + 4848643380 30 ??? 0x000000012100685a 0 + 4848642138 31 ??? 0x000000012100696e 0 + 4848642414 32 ??? 0x000000012100696e 0 + 4848642414 33 ??? 0x0000000121006e8d 0 + 4848643725 34 ??? 0x0000000121006e8d 0 + 4848643725 35 ??? 0x00000001210069b3 0 + 4848642483 36 ??? 0x00000001210069b3 0 + 4848642483 37 ??? 0x00000001210069b3 0 + 4848642483 38 ??? 0x0000000121001438 0 + 4848620600 39 libclient64.dylib 0x000000011e1dfda7 JVM_Lseek + 181440 40 libclient64.dylib 0x000000011e1dfb7a JVM_Lseek + 180883 41 libclient64.dylib 0x000000011e1f7e2e JVM_NewInstanceFromConstructor + 3265 42 libclient64.dylib 0x000000011e1f8fe2 JVM_InvokeMethod + 940 43 libclient64.dylib 0x000000011e1f8da9 JVM_InvokeMethod + 371 44 libjvmlinkage.dylib 0x000000010071de0e JVM_InvokeMethod + 78 45 ??? 0x0000000121011cc8 0 + 4848688328 46 ??? 0x00000001210069b3 0 + 4848642483 47 ??? 0x00000001210069b3 0 + 4848642483 48 ??? 0x0000000121006e8d 0 + 4848643725 49 ??? 0x00000001210069b3 0 + 4848642483 50 ??? 0x000000012100685a 0 + 4848642138 51 ??? 0x000000012100685a 0 + 4848642138 52 ??? 0x0000000121001438 0 + 4848620600 53 libclient64.dylib 0x000000011e1dfda7 JVM_Lseek + 181440 54 libclient64.dylib 0x000000011e1dfb7a JVM_Lseek + 180883 55 libclient64.dylib 0x000000011e1ecdfe JVM_MonitorWait + 10780 56 libclient64.dylib 0x000000011e2dadce JVM_GetClassInterfaces + 8145 57 eclipse_1403.so 0x000000010040e420 startJavaJNI + 2138 58 eclipse_1403.so 0x000000010040cf7e startJavaVM + 134 59 eclipse_1403.so 0x000000010040b74d run + 4645 60 org.eclipse.eclipse 0x000000010000192c original_main + 1679 61 org.eclipse.eclipse 0x0000000100001efe main + 1230 62 org.eclipse.eclipse 0x00000001000010e9 _start + 227 63 org.eclipse.eclipse 0x0000000100001005 start + 33 Thread 0 crashed with X86 Thread State (64-bit): rax: 0x00000001344552c0 rbx: 0x00007fff848ab434 rcx: 0x0000000000000000 rdx: 0x00007fff848ab434 rdi: 0x00000001349ad0e0 rsi: 0x00007fff848e6c70 rbp: 0x00007fff5fbfbde0 rsp: 0x00007fff5fbfbc48 r8: 0x00007fff703f2760 r9: 0x0000000000000000 r10: 0x00000001349e79ce r11: 0x0000000000000000 r12: 0x0000000000000000 r13: 0x0000000134455260 r14: 0x0000000129e47d50 r15: 0x00000001349ad0e0 rip: 0x00007fff8765b1d8 rfl: 0x0000000000010202 cr2: 0x0000000000000028

Files changed in fix:
bundles/org.eclipse.swt/Eclipse SWT PI/cocoa/org/eclipse/swt/internal/cocoa/NSView.java bundles/org.eclipse.swt/Eclipse SWT PI/cocoa/org/eclipse/swt/internal/cocoa/OS.java bundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/widgets/Shell.java