diff options
-rw-r--r-- | pugl/pugl_win.cpp | 1 | ||||
-rw-r--r-- | pugl/pugl_x11.c | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/pugl/pugl_win.cpp b/pugl/pugl_win.cpp index cc6fc41..204afaf 100644 --- a/pugl/pugl_win.cpp +++ b/pugl/pugl_win.cpp @@ -364,6 +364,7 @@ handleMessage(PuglView* view, UINT message, WPARAM wParam, LPARAM lParam) case PUGL_LOCAL_CLOSE_MSG: if (view->closeFunc) { view->closeFunc(view); + view->redisplay = false; } break; default: diff --git a/pugl/pugl_x11.c b/pugl/pugl_x11.c index 838980b..e0852be 100644 --- a/pugl/pugl_x11.c +++ b/pugl/pugl_x11.c @@ -250,6 +250,7 @@ puglDestroy(PuglView* view) XCloseDisplay(view->impl->display); free(view->impl); free(view); + view = NULL; } static PuglKey @@ -438,6 +439,7 @@ puglProcessEvents(PuglView* view) xevent.xclient.message_type); if (!strcmp(type, "WM_PROTOCOLS") && view->closeFunc) { view->closeFunc(view); + view->redisplay = false; } XFree(type); continue; |