GL related crashes when closing the display window on MacBook Air (Intel) running 10.9.5 #3977

Closed
gohai opened this Issue Oct 9, 2015 · 3 comments

Comments

Projects
None yet
3 participants
@gohai
Contributor

gohai commented Oct 9, 2015

I see Processing 3.0 crash reproducibly when running certain examples on my 2012 MacBook Air (w/ Intel graphics). The crash happens after I close the display window.

This is from LowLevelGLVBOInterleaved:

Thread: main-Display-.macosx_nil-1-EDT-1
SIGSEGV (0xb) at pc=0x00007fff84acb122

C  [libGL.dylib+0x5122]  glDeleteBuffers+0x12
C  [libjogl_desktop.jnilib+0x2973c]  Java_jogamp_opengl_gl4_GL4bcImpl_dispatch_1glDeleteBuffers1__ILjava_lang_Object_2IZJ+0xcc
j  jogamp.opengl.gl4.GL4bcImpl.dispatch_glDeleteBuffers1(ILjava/lang/Object;IZJ)V+0
j  jogamp.opengl.gl4.GL4bcImpl.glDeleteBuffers(ILjava/nio/IntBuffer;)V+90
j  processing.opengl.PJOGL.deleteBuffers(ILjava/nio/IntBuffer;)V+6
j  LowLevelGLVboInterleaved.dispose()V+27
j  processing.opengl.PSurfaceJOGL$NEWTWindowListener.windowDestroyNotify(Lcom/jogamp/newt/event/WindowEvent;)V+7
j  jogamp.newt.WindowImpl.consumeWindowEvent(Lcom/jogamp/newt/event/WindowEvent;)V+254  
j  jogamp.newt.WindowImpl.sendWindowEvent(I)V+14
j  jogamp.newt.WindowImpl$1.run()V+143
j  com.jogamp.common.util.RunnableTask.run()V+176
j  jogamp.newt.DefaultEDTUtil$NEDT.run()V+216

Others give me a slightly different trace. This is EdgeFilter:

main-Display-.macosx_nil-1-EDT-1
SIGSEGV (0xb) at pc=0x00007fff84ac7887

C  [libGL.dylib+0x1887]  glDeleteTextures+0x12
C  [libjogl_desktop.jnilib+0x2a4cc]  Java_jogamp_opengl_gl4_GL4bcImpl_dispatch_1glDeleteTextures1__ILjava_lang_Object_2IZJ+0xcc
j  jogamp.opengl.gl4.GL4bcImpl.dispatch_glDeleteTextures1(ILjava/lang/Object;IZJ)V+0
j  jogamp.opengl.gl4.GL4bcImpl.glDeleteTextures(ILjava/nio/IntBuffer;)V+81
j  processing.opengl.PJOGL.deleteTextures(ILjava/nio/IntBuffer;)V+6
j  processing.opengl.PGraphicsOpenGL$GLResourceTexture.disposeNative()V+34
j  processing.opengl.PGraphicsOpenGL$GLResourceTexture.dispose()V+11
j  processing.opengl.Texture.dispose()V+11
j  processing.opengl.PGraphicsOpenGL.deleteSurfaceTextures()V+11
j  processing.opengl.PGraphicsOpenGL.dispose()V+38
j  processing.core.PApplet.dispose()V+28
j  processing.opengl.PSurfaceJOGL$NEWTWindowListener.windowDestroyNotify(Lcom/jogamp/newt/event/WindowEvent;)V+7
j  jogamp.newt.WindowImpl.consumeWindowEvent(Lcom/jogamp/newt/event/WindowEvent;)V+254
j  jogamp.newt.WindowImpl.sendWindowEvent(I)V+14
j  jogamp.newt.WindowImpl$1.run()V+143
j  com.jogamp.common.util.RunnableTask.run()V+176
j  jogamp.newt.DefaultEDTUtil$NEDT.run()V+216

Please let me know if there's anything to help debug this further.

@codeanticode codeanticode added the opengl label Oct 10, 2015

@codeanticode codeanticode self-assigned this Oct 12, 2015

@codeanticode

This comment has been minimized.

Show comment
Hide comment
@codeanticode

codeanticode Oct 12, 2015

Member

I can reproduce the crashes on 10.9.5, thanks.

Member

codeanticode commented Oct 12, 2015

I can reproduce the crashes on 10.9.5, thanks.

@JakubValtar

This comment has been minimized.

Show comment
Hide comment
@JakubValtar

JakubValtar Oct 14, 2015

Contributor

When the OpenGL context gets deleted it takes all the resources with it, so there is no need to explicitly delete them. The SIGSEGV probably happens because everything was already freed and context does not exist anymore.

Contributor

JakubValtar commented Oct 14, 2015

When the OpenGL context gets deleted it takes all the resources with it, so there is no need to explicitly delete them. The SIGSEGV probably happens because everything was already freed and context does not exist anymore.

@codeanticode

This comment has been minimized.

Show comment
Hide comment
@codeanticode

codeanticode Oct 23, 2015

Member

fixed with 60510b1 (the backing textures don't need to be explicitly disposed in the main surface), and processing/processing-docs@f037222

Member

codeanticode commented Oct 23, 2015

fixed with 60510b1 (the backing textures don't need to be explicitly disposed in the main surface), and processing/processing-docs@f037222

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment