|
From: Ioannis T. <sp...@us...> - 2004-10-29 19:43:34
|
Update of /cvsroot/java-game-lib/LWJGL/src/java/org/lwjgl/opengl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31732 Modified Files: ARBShaderObjects.java GL20.java Log Message: Fixed memory leak Index: ARBShaderObjects.java =================================================================== RCS file: /cvsroot/java-game-lib/LWJGL/src/java/org/lwjgl/opengl/ARBShaderObjects.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- ARBShaderObjects.java 31 Jul 2004 09:34:09 -0000 1.11 +++ ARBShaderObjects.java 29 Oct 2004 19:43:16 -0000 1.12 @@ -131,6 +131,9 @@ * @param strings */ public static void glShaderSourceARB(int shaderObj, ByteBuffer[] strings) { + if ( strings == null || strings.length == 0 ) + throw new IllegalArgumentException("Invalid shader string array."); + initShaderSource(strings.length); for ( int i = 0; i < strings.length; i++ ) { BufferChecks.checkDirect(strings[i]); Index: GL20.java =================================================================== RCS file: /cvsroot/java-game-lib/LWJGL/src/java/org/lwjgl/opengl/GL20.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- GL20.java 9 Sep 2004 23:48:50 -0000 1.1 +++ GL20.java 29 Oct 2004 19:43:16 -0000 1.2 @@ -112,6 +112,7 @@ */ public static void glShaderSource(int shader, ByteBuffer string) { BufferChecks.checkDirect(string); + initShaderSource(1); setShaderString(0, string, string.position(), string.remaining()); @@ -127,6 +128,9 @@ * @param strings */ public static void glShaderSource(int shader, ByteBuffer[] strings) { + if ( strings == null || strings.length == 0 ) + throw new IllegalArgumentException("Invalid shader string array."); + initShaderSource(strings.length); for ( int i = 0; i < strings.length; i++ ) { BufferChecks.checkDirect(strings[i]); |