Closed jzy3d closed 2 years ago
Maurizio said
I believe the crash you are seeing is caused by a Java exception in one of your upcalls. The VM should print something on System.out before crashing (e.g. the name of the exception at least). Do you see anything printed out?
While this look like a plain VM crash, this indicates an issue in some of the Java code you're calling back to; or, well, Glut seems to be calling back to. The last non-Panama element on the stack is this:
C [GLUT+0x59dd] -[GLUTView drawRect:]+0x5d So I believe this is where the upcall occurs; we start executing Java code (from native), the Java code throws, and, when we exit from the upcall, the Panama upcall handler detects that there's been a Java exception in the upcall, and terminates the VM.
The stack trace that comes out of this is not the same as the one you get when running in 100% Java mode, sadly - but I believe this is what is happening. We should improve the diagnosability situation here - I had similar failures in tests when trying to change the API/implementation, and those can be quite nasty to debug.
And it was indeed an NPE in Jzy3D code, visible in console, but without stack trace.
Running a port of the original panama Teapot to Jzy3D with a Panama implementation of Painter, hence using panama to call OpenGL.
I got a JVM crash :