Hi,
I have an application that runs fine on my High Sierra but crashes on a customers Catalina Mac. This application has been running without problems for years and the recent code changes have been minimal and very unlikely to explain the crash and previous versions run fine on Catalina. Below is the crashed thread dump. Any idea how to debug this further? Anything here that rings a bell? On my machine I get following on the console, could that be related? WARNING: Illegal reflective access by eazycnc.Main (file:/Users/nyholku/EazyCNC-Project/classes/) to method com.apple.eawt.FullScreenUtilities.setWindowCanFullScreen(java.awt.Window,boolean) I've got that message for years and it has never manifested any problems. wbr Kusti This is the jogl version info: ----------------------------------------------------------------------------------------------------- Package: com.jogamp.opengl Extension Name: com.jogamp.opengl Specification Title: Java Bindings for OpenGL API Specification Specification Vendor: JogAmp Community Specification Version: 2.4 Implementation Title: Java Bindings for OpenGL Runtime Environment Implementation Vendor: JogAmp Community Implementation Vendor ID: com.jogamp Implementation URL: http://jogamp.org/ Implementation Version: 2.4.0-rc-20190108 Implementation Build: 2.4-bmanual-20190108 Implementation Branch: java-11-fixes Implementation Commit: 53402d8a066fa9f8e103388637f166335ca6908d ----------------------------------------------------------------------------------------------------- And this is the crash log. Thread 31 Crashed:: Java: AWT-EventQueue-0 0 libsystem_kernel.dylib 0x00007fff6950b33a __pthread_kill + 10 1 libsystem_pthread.dylib 0x00007fff695cbe60 pthread_kill + 430 2 libsystem_c.dylib 0x00007fff69492808 abort + 120 3 libc++abi.dylib 0x00007fff666f9458 abort_message + 231 4 libc++abi.dylib 0x00007fff666ea8bf demangling_terminate_handler() + 262 5 libobjc.A.dylib 0x00007fff68225a57 _objc_terminate() + 96 6 libc++abi.dylib 0x00007fff666f8887 std::__terminate(void (*)()) + 8 7 libc++abi.dylib 0x00007fff666fb1a2 __cxxabiv1::failed_throw(__cxxabiv1::__cxa_exception*) + 27 8 libc++abi.dylib 0x00007fff666fb169 __cxa_throw + 113 9 libobjc.A.dylib 0x00007fff68223bcc objc_exception_throw + 350 10 com.apple.CoreFoundation 0x00007fff2f3470ac -[NSException raise] + 9 11 com.apple.AppKit 0x00007fff2c52f5ec -[NSWindow(NSWindow_Theme) _postWindowNeedsToResetDragMarginsUnlessPostingDisabled] + 310 12 com.apple.AppKit 0x00007fff2c517052 -[NSWindow _initContent:styleMask:backing:defer:contentView:] + 1416 13 com.apple.AppKit 0x00007fff2c516ac3 -[NSWindow initWithContentRect:styleMask:backing:defer:] + 42 14 libnativewindow_macosx.jnilib 0x000000016621d4b9 Java_jogamp_nativewindow_macosx_OSXUtil_CreateNSWindow0 + 377 15 ??? 0x000000010ca878d0 0 + 4507334864 16 ??? 0x000000010ca81790 0 + 4507309968 17 ??? 0x000000010ca81790 0 + 4507309968 18 ??? 0x000000010ca81cec 0 + 4507311340 19 ??? 0x000000010ca81cec 0 + 4507311340 20 ??? 0x000000010ca81cec 0 + 4507311340 21 ??? 0x000000010ca81a00 0 + 4507310592 22 ??? 0x000000010ca81a00 0 + 4507310592 23 ??? 0x000000010ca81a00 0 + 4507310592 24 ??? 0x000000010ca81450 0 + 4507309136 25 ??? 0x000000010ca81450 0 + 4507309136 26 ??? 0x000000010ca81450 0 + 4507309136 27 ??? 0x000000010ca81450 0 + 4507309136 28 ??? 0x000000010ca81ca7 0 + 4507311271 29 ??? 0x000000010ca78849 0 + 4507273289 30 libjvm.dylib 0x0000000105e9dc18 JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, Thread*) + 538 31 libjvm.dylib 0x0000000105f18795 JVM_DoPrivileged + 1747 32 ??? 0x00000001145ad992 0 + 4636465554 33 ??? 0x000000010ca81a00 0 + 4507310592 34 ??? 0x000000010ca81ca7 0 + 4507311271 35 ??? 0x000000010ca81a00 0 + 4507310592 36 ??? 0x000000010ca81a00 0 + 4507310592 37 ??? 0x000000010ca81a00 0 + 4507310592 38 ??? 0x000000010ca81a00 0 + 4507310592 39 ??? 0x000000010ca81ae2 0 + 4507310818 40 ??? 0x000000010ca81a00 0 + 4507310592 41 ??? 0x000000010ca81a00 0 + 4507310592 42 ??? 0x000000010ca81ca7 0 + 4507311271 43 ??? 0x000000010ca81ca7 0 + 4507311271 44 ??? 0x000000010ca81cec 0 + 4507311340 45 ??? 0x000000010ca81cec 0 + 4507311340 46 ??? 0x000000010ca81ca7 0 + 4507311271 47 ??? 0x000000010ca81a00 0 + 4507310592 48 ??? 0x000000010ca78849 0 + 4507273289 49 libjvm.dylib 0x0000000105e9dc18 JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, Thread*) + 538 50 libjvm.dylib 0x0000000105f18795 JVM_DoPrivileged + 1747 51 ??? 0x000000010ca878d0 0 + 4507334864 52 ??? 0x000000010ca81a00 0 + 4507310592 53 ??? 0x000000010ca81ae2 0 + 4507310818 54 ??? 0x000000010ca81ca7 0 + 4507311271 55 ??? 0x000000010ca81ca7 0 + 4507311271 56 ??? 0x000000010ca81ca7 0 + 4507311271 57 ??? 0x000000010ca81ca7 0 + 4507311271 58 ??? 0x000000010ca81ca7 0 + 4507311271 59 ??? 0x000000010ca81ca7 0 + 4507311271 60 ??? 0x000000010ca78849 0 + 4507273289 61 libjvm.dylib 0x0000000105e9dc18 JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, Thread*) + 538 62 libjvm.dylib 0x0000000105e9d07e JavaCalls::call_virtual(JavaValue*, Klass*, Symbol*, Symbol*, JavaCallArguments*, Thread*) + 238 63 libjvm.dylib 0x0000000105e9d13a JavaCalls::call_virtual(JavaValue*, Handle, Klass*, Symbol*, Symbol*, Thread*) + 98 64 libjvm.dylib 0x0000000105f211dc thread_entry(JavaThread*, Thread*) + 120 65 libjvm.dylib 0x00000001061f00e8 JavaThread::thread_main_inner() + 130 66 libjvm.dylib 0x00000001061eff33 JavaThread::run() + 419 67 libjvm.dylib 0x00000001061edfa8 Thread::call_run() + 96 68 libjvm.dylib 0x00000001060f2da3 thread_native_entry(Thread*) + 313 69 libsystem_pthread.dylib 0x00007fff695cc109 _pthread_start + 148 70 libsystem_pthread.dylib 0x00007fff695c7b8b thread_start + 15 |
On previous versions of macosx mojave there was a warning on window creation if the window was created on the wrong thread. " 2019-12-27 17:25:03.285 java[98680:16302000] pid(98680)/euid(501) is
calling TIS/TSM in non-main thread environment, ERROR : This is NOT
allowed. Please call TIS/TSM in main thread!!! 2019-12-27 17:25:03.810 java[98680:16302000] WARNING: NSWindow drag regions should only be invalidated on the Main Thread! This will throw an exception in the future. Called from ( 0 AppKit 0x00007fff31967607 -[NSWindow(NSWindow_Theme) _postWindowNeedsToResetDragMarginsUnlessPostingDisabled] + 378 1 AppKit 0x00007fff319649f7 -[NSWindow _initContent:styleMask:backing:defer:contentView:] + 1479 2 AppKit 0x00007fff3196442a -[NSWindow initWithContentRect:styleMask:backing:defer:] + 45 3 libnativewindow_macosx.jnilib 0x000000011dc113fe Java_jogamp_nativewindow_macosx_OSXUtil_CreateNSWindow0 + 398 " it looks like macos x have started to throw the exception as you observed. i notice from your email that you use Implementation Version: 2.4.0-rc-20190108 can you try use jogamp jogl v2.4.0-rc-20200307 Den lör 10 okt. 2020 kl 19:43 skrev eazycncn [via jogamp] <[hidden email]>: Hi, |
This post was updated on .
Starting with macos x 10.10+ there is an api to shedule work on the main thread from
any background thread, similar to Swing SwingUtilities and OpenJFX Platform run queues, https://developer.apple.com/documentation/dispatch/1452921-dispatch_get_main_queue?language=objc https://developer.apple.com/library/archive/documentation/General/Conceptual/ConcurrencyProgrammingGuide/OperationQueues/OperationQueues.html#//apple_ref/doc/uid/TP40008091-CH102-SW15 so to fix the issue for the latest macosx update nativewindow native code has to use this api to get the dispatch_get_main_queue and shedule all window operations to be sent to that queue. this of course would break compatibility with macosx before 10.10 where this API do not exist. |
This post was updated on .
please see https://jogamp.org/bugzilla/show_bug.cgi?id=1398
this bug, that all mac os x window updates must be done on the main thread, is one of the current release blockers for jogamp jogl 2.4 the latest change to fix this issue was added 2020-06-15 01:21:44 https://jogamp.org/cgit/jogl.git/log/ i do not think we have a test build that include the very last fixes. you may need to try compile jogl if the last testbuild do not solve your issue. |
In reply to this post by Xerxes Rånby
>
> i notice from your email that you use > Implementation Version: 2.4.0-rc-20190108 > > can you try use jogamp jogl v2.4.0-rc-20200307 > https://jogamp.org/deployment/v2.4.0-rc-20200307/ > I got confirmation from the user and I tried it myself on Catalina and I can confirm that the culprit was Catalina and that the jogamp jogl v2.4.0-rc-20200307 fixed the problem. Brilliant, thank you very much for this and all the work that the jogl people do! I have not tested jogamp jogl v2.4.0-rc-20200307 on Windows or Linux yet. And I love the fat jar!! wbr Kusti |
Free forum by Nabble | Edit this page |