X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=retrace%2Fglretrace_wgl.cpp;h=abcf068a057056f88bdefbe1d8c002bd2e9e0459;hb=48c661ea6c0f2bd9b76a3385cd946b7d07bc9b5f;hp=8fc9fe667ace5f4cd16f2f8d6b1b4df5cb47fae5;hpb=7a5d9692c1072effd87092960333f34e78648bf1;p=apitrace diff --git a/retrace/glretrace_wgl.cpp b/retrace/glretrace_wgl.cpp index 8fc9fe6..abcf068 100644 --- a/retrace/glretrace_wgl.cpp +++ b/retrace/glretrace_wgl.cpp @@ -100,8 +100,11 @@ static void retrace_wglSwapBuffers(trace::Call &call) { if (retrace::doubleBuffer) { if (drawable) { drawable->swapBuffers(); - } else if (currentContext) { - currentContext->drawable->swapBuffers(); + } else { + glretrace::Context *currentContext = glretrace::getCurrentContext(); + if (currentContext) { + currentContext->drawable->swapBuffers(); + } } } else { glFlush(); @@ -117,6 +120,7 @@ static void retrace_wglShareLists(trace::Call &call) { Context *new_context = glretrace::createContext(share_context); if (new_context) { + glretrace::Context *currentContext = glretrace::getCurrentContext(); if (currentContext == old_context) { glretrace::makeCurrent(call, currentContext->drawable, new_context); }