X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=retrace%2Fglretrace_ws.cpp;h=ac03fcc97de6d56390f807a3b1661e6571d489c1;hb=d1623a2829191e6837d89bc2022ee1495f3d5aee;hp=d4b0817bfdf0b1852a619a81e41926eadfb73023;hpb=39a9f3650233206061134772417bfada16cd07be;p=apitrace diff --git a/retrace/glretrace_ws.cpp b/retrace/glretrace_ws.cpp index d4b0817..ac03fcc 100644 --- a/retrace/glretrace_ws.cpp +++ b/retrace/glretrace_ws.cpp @@ -122,6 +122,15 @@ createContext(Context *shareContext) { } +Context::~Context() +{ + //assert(this != getCurrentContext()); + if (this != getCurrentContext()) { + delete wsContext; + } +} + + static thread_specific Context * currentContextPtr; @@ -153,13 +162,10 @@ makeCurrent(trace::Call &call, glws::Drawable *drawable, Context *context) return false; } - if (currentContext) { - currentContext->drawable = NULL; - } + currentContextPtr = context; if (drawable && context) { context->drawable = drawable; - currentContextPtr = context; if (!context->used) { initContext();