X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=glretrace_glx.cpp;h=72535aeeef082b2eaab00c7c7a6060b0854b6713;hb=bb130e5395d472c8ce23012c8234b32ca38fa460;hp=1cfd591c171e71c5d20ba9caf78daab5f1dddeb3;hpb=8d53812c37b72d4cc4346b4548a940d0210815df;p=apitrace diff --git a/glretrace_glx.cpp b/glretrace_glx.cpp index 1cfd591..72535ae 100644 --- a/glretrace_glx.cpp +++ b/glretrace_glx.cpp @@ -110,6 +110,17 @@ static void retrace_glXMakeCurrent(Trace::Call &call) { } } + +static void retrace_glXDestroyContext(Trace::Call &call) { + glws::Context *context = getContext(call.arg(1).toUIntPtr()); + + if (!context) { + return; + } + + delete context; +} + static void retrace_glXSwapBuffers(Trace::Call &call) { frame_complete(call.no); if (double_buffer) { @@ -177,7 +188,7 @@ static const retrace::Entry callbacks[] = { //{"glXCreatePixmap", &retrace_glXCreatePixmap}, //{"glXCreateWindow", &retrace_glXCreateWindow}, //{"glXCushionSGI", &retrace_glXCushionSGI}, - //{"glXDestroyContext", &retrace_glXDestroyContext}, + {"glXDestroyContext", &retrace_glXDestroyContext}, //{"glXDestroyGLXPbufferSGIX", &retrace_glXDestroyGLXPbufferSGIX}, //{"glXDestroyGLXPixmap", &retrace_glXDestroyGLXPixmap}, //{"glXDestroyPbuffer", &retrace_glXDestroyPbuffer},