فهرست منبع

First attempt to fix a bug reported by david_bernard_31, the size of the strings in the shader code was wrongly computed for the JOGL backend

Julien Gouesse 10 سال پیش
والد
کامیت
ea28e8a449
1فایلهای تغییر یافته به همراه9 افزوده شده و 0 حذف شده
  1. 9 0
      jme3-jogl/src/main/java/com/jme3/renderer/jogl/JoglGL.java

+ 9 - 0
jme3-jogl/src/main/java/com/jme3/renderer/jogl/JoglGL.java

@@ -532,6 +532,15 @@ public class JoglGL implements GL, GL2, GL3, GL4 {
     @Override
 	public void glShaderSource(int param1, String[] param2, IntBuffer param3) {
         checkLimit(param3);
+        
+        int param3pos = param3.position();
+        try {
+        	for (final String param2string : param2) {
+        		param3.put(Math.max(param2string.length(), param2string.getBytes().length));
+        	}
+        } finally {
+        	param3.position(param3pos);
+        }
         GLContext.getCurrentGL().getGL2ES2().glShaderSource(param1, param2.length, param2, param3);
     }