DEADSOFTWARE

Fix arrays overflow by check in glEnd, add missing stubs xashxt
authormittorn <mittorn@sibmail.com>
Mon, 25 Jul 2016 21:00:32 +0000 (21:00 +0000)
committermittorn <mittorn@sibmail.com>
Mon, 25 Jul 2016 21:00:32 +0000 (21:00 +0000)
GL/gl.h
nanoWrap.cpp

diff --git a/GL/gl.h b/GL/gl.h
index 37a2a8426020a9b2084e94f54b5fd6e59e026200..605864b5729d09429e5af927595469c41d9ca538 100644 (file)
--- a/GL/gl.h
+++ b/GL/gl.h
@@ -719,6 +719,7 @@ void glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderb
 void glNormalPointer(GLenum type, GLsizei stride, const void *ptr);
 
 void glMultiTexCoord3f(GLenum, GLfloat, GLfloat, GLfloat);
+void glMultiTexCoord3fARB(GLenum, GLfloat, GLfloat, GLfloat);
 
 void glMultiTexCoord2f(GLenum, GLfloat, GLfloat);
 
index a2189f3164bffae87fe64c65efb5f2022da995fe..cdb9313f3469cf920bb09db177a782b42543931e 100644 (file)
@@ -209,9 +209,9 @@ struct VertexAttrib
 #endif
     };
 
-static VertexAttrib vertexattribs[40000];
+static VertexAttrib vertexattribs[60000];
 
-static GLushort indexArray[30000];
+static GLushort indexArray[50000];
 
 static GLuint vertexCount = 0;
 static GLuint indexCount = 0;
@@ -511,6 +511,9 @@ void glEnd(void)
         default:
             break;
         }
+               if( ptrVertexAttribArray - vertexattribs > 20000 * sizeof(VertexAttrib) ||
+                               ptrIndexArray - indexArray > 15000 * sizeof(GLushort) )
+                       FlushOnStateChange();
     }
 
 void glEnable (GLenum cap)
@@ -1942,9 +1945,9 @@ void glTexEnvi (GLenum target, GLenum pname, GLint param)
     glEsImpl->glTexEnvi(target, pname, param);
     }
 
-void glMultiTexCoord3fARB(GLenum, GLfloat, GLfloat, GLfloat)
+void glMultiTexCoord3fARB(GLenum a, GLfloat b, GLfloat c, GLfloat)
 {
-
+       return glMultiTexCoord2fARB(a, b, c);
 }
 
 void glMultiTexCoord2f(GLenum, GLfloat, GLfloat)