summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVasiliy Ulyanov <v.ulyanov@samsung.com>2016-03-12 17:10:12 +0300
committerVasiliy Ulyanov <v.ulyanov@samsung.com>2016-03-12 17:10:12 +0300
commit246a7db9c03797276b650b955139210c04f80e84 (patch)
treeb9188b38a530e953263d92318c21ffa7e64c62f5
parentd686c16054547df09eb13df3699001df023696cc (diff)
downloademulator-yagl-246a7db9c03797276b650b955139210c04f80e84.tar.gz
emulator-yagl-246a7db9c03797276b650b955139210c04f80e84.tar.bz2
emulator-yagl-246a7db9c03797276b650b955139210c04f80e84.zip
This is a workaround for web-tct. There seems to be a race condition with these tests (i.e. they are rendering from several threads without ensuring GL synchronization). The commit should be reverted as soon as a proper fix is applied. Change-Id: I095e76f0d9c84e7623035ca24817cfc98e7a2ae5 Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
-rw-r--r--GLES_common/yagl_gles_calls.in2
-rw-r--r--GLES_common/yagl_host_gles_calls.c1
2 files changed, 2 insertions, 1 deletions
diff --git a/GLES_common/yagl_gles_calls.in b/GLES_common/yagl_gles_calls.in
index e0cf14e..f327328 100644
--- a/GLES_common/yagl_gles_calls.in
+++ b/GLES_common/yagl_gles_calls.in
@@ -37,7 +37,7 @@ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLint offset,
void glMapBuffer(GLuint buffer, const GLuint *ranges, GLvoid *data)
void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizei size)
# Textures
-void glGenTextures(const GLuint *textures)
+@void glGenTextures(const GLuint *textures)
void glBindTexture(GLenum target, GLuint texture)
void glActiveTexture(GLenum texture)
void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
diff --git a/GLES_common/yagl_host_gles_calls.c b/GLES_common/yagl_host_gles_calls.c
index a810c02..86c4611 100644
--- a/GLES_common/yagl_host_gles_calls.c
+++ b/GLES_common/yagl_host_gles_calls.c
@@ -519,6 +519,7 @@ void yagl_host_glGenTextures(const GLuint *textures, int32_t textures_count)
yagl_transport_begin(t, yagl_api_id_gles, 35, 2 * 8, 0 * 8 + yagl_transport_array_size(textures, textures_count, sizeof(GLuint)));
yagl_transport_put_out_array(t, textures, textures_count, sizeof(GLuint));
yagl_transport_end(t);
+ yagl_transport_flush(t, NULL);
}
/*