Bug 651

Summary: GL_INVALID_ENUM raised with glGetInteger(GL_MAX_TEXTURE_IMAGE_UNITS, ...) w/ Mesa3D 9.0
Product: [JogAmp] Jogl Reporter: Mark Raynsford <org.jogamp>
Component: openglAssignee: Sven Gothel <sgothel>
Status: RESOLVED INVALID    
Severity: enhancement    
Priority: ---    
Version: 2   
Hardware: All   
OS: all   
Type: --- SCM Refs:
jogl cdd6b8fe25581b127e36f713e31c84af2d72945e
Workaround: ---
Attachments: CheckUnits program
Makefile for C programs
GL2 context creation
GL3 context creation
Context-independent rendering function
Header

Description Mark Raynsford 2012-12-08 13:00:25 CET
Created attachment 394 [details]
CheckUnits program

The attached CheckUnits program raises GL_INVALID_ENUM on the call to glGetInteger(GL_MAX_TEXTURE_IMAGE_UNITS, ...).

The output of the program up to that point is:

libEGL warning: unsupported platform Windows
libEGL warning: unsupported platform Windows
VERSION_MAJOR : 2
VERSION_MINOR : 1
Exception in thread "main-Display-.x11_:0.0-1-EDT-1" javax.media.opengl.GLException: Thread[main-Display-.x11_:0.0-1-EDT-1,5,main] glGetError() returned the following error codes after a call to glGetIntegerv(<int> 0x8872, <java.nio.IntBuffer> java.nio.DirectIntBufferU[pos=0 lim=1 cap=1]): GL_INVALID_ENUM ( 1280 0x500), 
false
Chosen caps : GLCaps[glx vid 0x9f, fbc 0x69: rgba 0x8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms: 24/8/0, dbl, mono  , hw, GLProfile[GL2/GL2.hw], on-scr[.]]
INIT GL     : DebugGL2 [ implementing javax.media.opengl.GL2,
   downstream: jogamp.opengl.gl4.GL4bcImpl@30296f76
  ]
GL_VENDOR   : Intel Open Source Technology Center
GL_RENDERER : Mesa DRI Intel(R) Sandybridge Mobile 
GL_VERSION  : 3.0 Mesa 9.0
  at javax.media.opengl.DebugGL2.checkGLGetError(DebugGL2.java:24827)
  at javax.media.opengl.DebugGL2.glGetIntegerv(DebugGL2.java:14603)
  at com.io7m.jcanephora.CheckUnits.init(CheckUnits.java:79)
  at jogamp.opengl.GLDrawableHelper.init(GLDrawableHelper.java:332)
  at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:371)
  at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:358)
  at jogamp.opengl.GLAutoDrawableBase$2.run(GLAutoDrawableBase.java:280)
  at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:655)
  at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:594)
  at com.jogamp.newt.opengl.GLWindow.display(GLWindow.java:543)
  at jogamp.opengl.GLAutoDrawableBase.defaultWindowRepaintOp(GLAutoDrawableBase.java:99)
  at com.jogamp.newt.opengl.GLWindow.access$000(GLWindow.java:94)
  at com.jogamp.newt.opengl.GLWindow$1.windowRepaint(GLWindow.java:107)
  at jogamp.newt.WindowImpl.consumeWindowEvent(WindowImpl.java:2392)
  at jogamp.newt.WindowImpl.consumeEvent(WindowImpl.java:1943)
  at jogamp.newt.DisplayImpl.dispatchMessage(DisplayImpl.java:388)
  at jogamp.newt.DisplayImpl.dispatchMessages(DisplayImpl.java:436)
  at jogamp.newt.DisplayImpl$DispatchMessagesRunnable.run(DisplayImpl.java:371)
  at jogamp.newt.DefaultEDTUtil$EventDispatchThread.run(DefaultEDTUtil.java:293)

The attached C programs don't raise the error, so presumably something is going wrong with regards to context creation.
Comment 1 Mark Raynsford 2012-12-08 13:01:06 CET
Created attachment 395 [details]
Makefile for C programs
Comment 2 Mark Raynsford 2012-12-08 13:01:36 CET
Created attachment 396 [details]
GL2 context creation
Comment 3 Mark Raynsford 2012-12-08 13:01:57 CET
Created attachment 397 [details]
GL3 context creation
Comment 4 Mark Raynsford 2012-12-08 13:02:26 CET
Created attachment 398 [details]
Context-independent rendering function
Comment 5 Mark Raynsford 2012-12-08 13:02:46 CET
Created attachment 399 [details]
Header
Comment 6 Sven Gothel 2012-12-20 10:36:21 CET
This bug lies within Mesa3D (any renderer) and is fixed in 
commit 8dc79ae7d73cf6711c2182ff9a5d37ef6c989d23.

Mesa3D Version 9.0 still exposes this bug, 
where 9.0.1 has it fixed w/ above commit.