X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=retrace%2Fglretrace_cgl.cpp;h=a0755953b3a52059e35f9d4e0ff9447cba878305;hb=42b89fc9a180e56dbe55a9816904c84aacb555ea;hp=613ee81d237073b9d272afd6c87becce1f188e01;hpb=04f42b803c60b593359322b80af4003361ccd097;p=apitrace diff --git a/retrace/glretrace_cgl.cpp b/retrace/glretrace_cgl.cpp index 613ee81..a075595 100644 --- a/retrace/glretrace_cgl.cpp +++ b/retrace/glretrace_cgl.cpp @@ -239,13 +239,18 @@ static void retrace_CGLFlushDrawable(trace::Call &call) { Context *context = getContext(ctx); if (context) { - if (retrace::doubleBuffer) { - context->drawable->swapBuffers(); + if (context->drawable) { + if (retrace::doubleBuffer) { + context->drawable->swapBuffers(); + } else { + glFlush(); + } + frame_complete(call); } else { - glFlush(); + if (retrace::debug) { + retrace::warning(call) << "context has no drawable\n"; + } } - - frame_complete(call); } } @@ -316,6 +321,7 @@ const retrace::Entry glretrace::cgl_callbacks[] = { {"CGLSetParameter", &retrace::ignore}, {"CGLGetParameter", &retrace::ignore}, {"CGLFlushDrawable", &retrace_CGLFlushDrawable}, + {"CGLUpdateContext", &retrace::ignore}, {"CGLTexImageIOSurface2D", &retrace_CGLTexImageIOSurface2D}, {NULL, NULL}, };