summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/mapi/glapi/gen/gl_marshal.py26
1 files changed, 15 insertions, 11 deletions
diff --git a/src/mapi/glapi/gen/gl_marshal.py b/src/mapi/glapi/gen/gl_marshal.py
index 4fd2bc2a5b9..a994a1425bc 100644
--- a/src/mapi/glapi/gen/gl_marshal.py
+++ b/src/mapi/glapi/gen/gl_marshal.py
@@ -254,19 +254,23 @@ class PrintCode(gl_XML.gl_print_base):
out('return;')
out('}')
- out('if (cmd_size <= MARSHAL_MAX_CMD_SIZE) {')
+ if len(func.variable_params) > 0:
+ with indent():
+ out('if (cmd_size <= MARSHAL_MAX_CMD_SIZE) {')
+ with indent():
+ self.print_async_dispatch(func)
+ out('return;')
+ out('}')
+ out('')
+ if need_fallback_sync:
+ out('fallback_to_sync:')
+ with indent():
+ out('_mesa_glthread_finish(ctx);')
+ self.print_sync_dispatch(func)
+ else:
with indent():
self.print_async_dispatch(func)
- out('return;')
- out('}')
-
- out('')
- if need_fallback_sync:
- out('fallback_to_sync:')
- with indent():
- out('_mesa_glthread_finish(ctx);')
- self.print_sync_dispatch(func)
-
+ assert not need_fallback_sync
out('}')
def print_async_body(self, func):