From 024aff4ebc2c2c5abaf4de45b72e0345fd6f58be Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jos=C3=A9=20Fonseca?= Date: Wed, 29 Feb 2012 18:00:06 +0000 Subject: [PATCH] Fix glUnmapNamedBufferEXT/glFlushMappedNamedBufferRangeEXT - GL_BUFFER_ACCESS -> GL_BUFFER_ACCESS_FLAGS - Use the __glXxx to avoid recursion --- gltrace.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/gltrace.py b/gltrace.py index 2125ac3..c17c01a 100644 --- a/gltrace.py +++ b/gltrace.py @@ -467,14 +467,16 @@ class GlTracer(Tracer): self.emit_memcpy('mapping->map', 'mapping->map', 'mapping->length') print ' }' if function.name == 'glUnmapNamedBufferEXT': - print ' GLint access = 0;' - print ' glGetNamedBufferParameterivEXT(buffer, GL_BUFFER_ACCESS, &access);' - print ' if ((access & GL_MAP_WRITE_BIT) & !(access & GL_MAP_FLUSH_EXPLICIT_BIT)) {' + print ' GLint access_flags = 0;' + print ' __glGetNamedBufferParameterivEXT(buffer, GL_BUFFER_ACCESS_FLAGS, &access_flags);' + print ' if ((access_flags & GL_MAP_WRITE_BIT) && !(access_flags & GL_MAP_FLUSH_EXPLICIT_BIT)) {' print ' GLvoid *map = NULL;' - print ' glGetNamedBufferPointervEXT(buffer, GL_BUFFER_MAP_POINTER, &map);' + print ' __glGetNamedBufferPointervEXT(buffer, GL_BUFFER_MAP_POINTER, &map);' print ' GLint length = 0;' - print ' glGetNamedBufferParameterivEXT(buffer, GL_BUFFER_MAP_LENGTH, &length);' + print ' __glGetNamedBufferParameterivEXT(buffer, GL_BUFFER_MAP_LENGTH, &length);' + print ' if (map && length > 0) {' self.emit_memcpy('map', 'map', 'length') + print ' }' print ' }' if function.name in ('glFlushMappedBufferRange', 'glFlushMappedBufferRangeAPPLE'): print ' struct buffer_mapping *mapping = get_buffer_mapping(target);' @@ -487,8 +489,8 @@ class GlTracer(Tracer): print ' }' if function.name == 'glFlushMappedNamedBufferRangeEXT': print ' GLvoid *map = NULL;' - print ' glGetNamedBufferPointervEXT(buffer, GL_BUFFER_MAP_POINTER, &map);' - print ' if (map) {' + print ' __glGetNamedBufferPointervEXT(buffer, GL_BUFFER_MAP_POINTER, &map);' + print ' if (map && length > 0) {' self.emit_memcpy('(char *)map + offset', '(const char *)map + offset', 'length') print ' }' -- 2.45.2