diff options
author | falkTX <falktx@gmail.com> | 2015-10-19 13:28:02 +0200 |
---|---|---|
committer | falkTX <falktx@gmail.com> | 2015-10-19 13:28:02 +0200 |
commit | 327f69dfc85141fa5597063c060e03ae71d34c11 (patch) | |
tree | 524e89a998e570e9f7e20d4c4f3e39ab9b6f84fe | |
parent | 62801adfc8c46199d87b2508f523c42c31a30146 (diff) |
Clear GL context in puglLeaveContext
-rw-r--r-- | dgl/src/pugl/pugl_win.cpp | 9 | ||||
-rw-r--r-- | dgl/src/pugl/pugl_x11.c | 11 |
2 files changed, 13 insertions, 7 deletions
diff --git a/dgl/src/pugl/pugl_win.cpp b/dgl/src/pugl/pugl_win.cpp index acf7d9f8..afbae4b3 100644 --- a/dgl/src/pugl/pugl_win.cpp +++ b/dgl/src/pugl/pugl_win.cpp @@ -87,9 +87,12 @@ void puglLeaveContext(PuglView* view, bool flush) { #ifdef PUGL_HAVE_GL - if (view->ctx_type == PUGL_GL && flush) { - glFlush(); - SwapBuffers(view->impl->hdc); + if (view->ctx_type == PUGL_GL) { + if (flush) { + glFlush(); + SwapBuffers(view->impl->hdc); + } + wglMakeCurrent(NULL, NULL); } #endif } diff --git a/dgl/src/pugl/pugl_x11.c b/dgl/src/pugl/pugl_x11.c index 0ddcd339..60be55e7 100644 --- a/dgl/src/pugl/pugl_x11.c +++ b/dgl/src/pugl/pugl_x11.c @@ -218,11 +218,14 @@ void puglLeaveContext(PuglView* view, bool flush) { #ifdef PUGL_HAVE_GL - if (view->ctx_type == PUGL_GL && flush) { - glFlush(); - if (view->impl->doubleBuffered) { - glXSwapBuffers(view->impl->display, view->impl->win); + if (view->ctx_type == PUGL_GL) { + if (flush) { + glFlush(); + if (view->impl->doubleBuffered) { + glXSwapBuffers(view->impl->display, view->impl->win); + } } + glXMakeCurrent(view->impl->display, None, NULL); } #endif } |