From: James Benton Date: Mon, 6 Aug 2012 10:44:23 +0000 (+0100) Subject: Correctly handle profiling of glBegin/glEnd. X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=3bb28dd9e2b6b18b7f2f8d2589a8d06d138a43ef;p=apitrace Correctly handle profiling of glBegin/glEnd. --- diff --git a/retrace/glretrace.py b/retrace/glretrace.py index fd012d1..be30616 100644 --- a/retrace/glretrace.py +++ b/retrace/glretrace.py @@ -294,7 +294,8 @@ class GlRetracer(Retracer): function.name in self.draw_array_function_names or function.name in self.draw_elements_function_names or function.name in self.draw_indirect_function_names or - function.name in self.misc_draw_function_names + function.name in self.misc_draw_function_names or + function.name == 'glBegin' ) if function.name in ('glUseProgram', 'glUseProgramObjectARB'): @@ -307,8 +308,8 @@ class GlRetracer(Retracer): if function.name == 'glEndList': print r' glretrace::insideList = false;' - if profileDraw: - print r' if (!glretrace::insideList && retrace::profiling) {' + if profileDraw and function.name != 'glEnd': + print r' if (!glretrace::insideList && !glretrace::insideGlBeginEnd && retrace::profiling) {' print r' glretrace::beginProfile(call);' print r' }' @@ -343,8 +344,8 @@ class GlRetracer(Retracer): else: Retracer.invokeFunction(self, function) - if profileDraw: - print r' if (!glretrace::insideList && retrace::profiling) {' + if profileDraw or function.name == 'glEnd': + print r' if (!glretrace::insideList && !glretrace::insideGlBeginEnd && retrace::profiling) {' print r' glretrace::endProfile(call);' print r' }'