fredsa / playn

Cross platform game library for N≥4 platforms
0 stars 1 forks source link

ArrayIndexOutOfBounds if endClipped is called before startClipped #237

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?

GLContext gl = playn.core.PlayN.graphics().ctx();
// call endClipped before calling startClipped
gl.endClipped(); // Out of bounds exception here
gl.startClipped(....)

What is the expected output? What do you see instead?
No exception would be nice. Or at least a custom exception. Instead we get this:

    [java] Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -2
     [java]     at java.util.ArrayList.get(ArrayList.java:324)
     [java]     at playn.core.gl.GLContext.popScissorState(GLContext.java:357)
     [java]     at playn.core.gl.GL20Context.endClipped(GL20Context.java:195)
     [java]     at playn.core.gl.ImmediateLayerGL$Clipped.render(ImmediateLayerGL.java:89)
     [java]     at playn.core.gl.ImmediateLayerGL.paint(ImmediateLayerGL.java:128)
     [java]     at playn.core.gl.GroupLayerGL.render(GroupLayerGL.java:173)
     [java]     at playn.core.gl.GroupLayerGL.paint(GroupLayerGL.java:166)
     [java]     at playn.core.gl.GL20Context.paint(GL20Context.java:71)
     [java]     at playn.java.JavaGraphics.paint(JavaGraphics.java:152)
     [java]     at playn.java.JavaPlatform.run(JavaPlatform.java:281)
     [java]     at playn.core.PlayN.run(PlayN.java:47)

What version of the product are you using? On what operating system?
Latest stable from maven (as of posting of this issue)

Original issue reported on code.google.com by chad...@gmail.com on 27 May 2013 at 9:47