summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYahan Zhou <yahan@google.com>2017-11-06 18:09:07 -0800
committerGreg Hartman <ghartman@google.com>2018-08-23 17:30:51 -0700
commit15835c327f5310507256780a99cefd93b456d788 (patch)
treeca6fb30e513bef55102b8be17dacb12f9414e43c
parent261800dfaef8091d79f990720026e7f1b8eb81e2 (diff)
downloaddevice_generic_opengl-transport-15835c327f5310507256780a99cefd93b456d788.tar.gz
device_generic_opengl-transport-15835c327f5310507256780a99cefd93b456d788.tar.bz2
device_generic_opengl-transport-15835c327f5310507256780a99cefd93b456d788.zip
[GPU Snapshot] GLES1 save vertex pointer data correctly
We would need to pass buffer size when calling glVertexPointer with a client data buffer. Change-Id: I719521b8186fc33467cb55efae963ef686c4c24a
-rw-r--r--host/libs/virglrenderer/OpenGLESDispatch/GLESv1Dispatch.cpp2
-rw-r--r--host/libs/virglrenderer/OpenGLESDispatch/GLESv1Dispatch.h3
-rw-r--r--host/libs/virglrenderer/OpenGLESDispatch/gles1_extensions.entries4
3 files changed, 8 insertions, 1 deletions
diff --git a/host/libs/virglrenderer/OpenGLESDispatch/GLESv1Dispatch.cpp b/host/libs/virglrenderer/OpenGLESDispatch/GLESv1Dispatch.cpp
index bda476c7f..fd520cb90 100644
--- a/host/libs/virglrenderer/OpenGLESDispatch/GLESv1Dispatch.cpp
+++ b/host/libs/virglrenderer/OpenGLESDispatch/GLESv1Dispatch.cpp
@@ -43,7 +43,7 @@ static emugl::SharedLibrary *s_underlying_gles2_lib = NULL;
// To make it consistent with the guest, all GLES1 functions not supported by
// the guest driver should be redirected to this function.
-static void gles1_unimplemented() {
+void gles1_unimplemented() {
fprintf(stderr, "Called unimplemented GLESv1 API\n");
}
diff --git a/host/libs/virglrenderer/OpenGLESDispatch/GLESv1Dispatch.h b/host/libs/virglrenderer/OpenGLESDispatch/GLESv1Dispatch.h
index 3bcb7a680..ad71f81d2 100644
--- a/host/libs/virglrenderer/OpenGLESDispatch/GLESv1Dispatch.h
+++ b/host/libs/virglrenderer/OpenGLESDispatch/GLESv1Dispatch.h
@@ -44,3 +44,6 @@ bool gles1_dispatch_init(GLESv1Dispatch* dispatch_table);
// Used to initialize the decoder.
void* gles1_dispatch_get_proc_func(const char* name, void* userData);
+
+// Used to check for unimplemented.
+void gles1_unimplemented();
diff --git a/host/libs/virglrenderer/OpenGLESDispatch/gles1_extensions.entries b/host/libs/virglrenderer/OpenGLESDispatch/gles1_extensions.entries
index 1e7f2f1fe..2670bae7c 100644
--- a/host/libs/virglrenderer/OpenGLESDispatch/gles1_extensions.entries
+++ b/host/libs/virglrenderer/OpenGLESDispatch/gles1_extensions.entries
@@ -11,3 +11,7 @@ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params );
void glTexGeniv(GLenum coord, GLenum pname, const GLint *params );
void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params );
void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params );
+void glColorPointerWithDataSize(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer, GLsizei dataSize);
+void glNormalPointerWithDataSize(GLenum type, GLsizei stride, const GLvoid *pointer, GLsizei dataSize);
+void glTexCoordPointerWithDataSize(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer, GLsizei dataSize);
+void glVertexPointerWithDataSize(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer, GLsizei dataSize);