diff options
author | couriersud <couriersud@arcor.de> | 2015-02-22 20:24:16 +0100 |
---|---|---|
committer | couriersud <couriersud@arcor.de> | 2015-02-22 20:24:16 +0100 |
commit | 9fcd415327cd4155a1aceff8886c5e7b3d136de5 (patch) | |
tree | 30a979eb1f8f322ae352c427809a3a71b8243965 | |
parent | 4ca1df404eb09cf02c5006ee7ec558ab7db843c0 (diff) |
WM_DESTROY may be send multiple times. This also fixes
-bench X crashes. (nw)
-rw-r--r-- | src/osd/windows/window.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/osd/windows/window.c b/src/osd/windows/window.c index 5ff7669cd9a..301b885b4d0 100644 --- a/src/osd/windows/window.c +++ b/src/osd/windows/window.c @@ -1405,9 +1405,12 @@ LRESULT CALLBACK win_window_info::video_window_proc(HWND wnd, UINT message, WPAR // destroy: clean up all attached rendering bits and NULL out our hwnd case WM_DESTROY: - window->m_renderer->destroy(); - global_free(window->m_renderer); - window->m_renderer = NULL; + if (!(window->m_renderer == NULL)) + { + window->m_renderer->destroy(); + global_free(window->m_renderer); + window->m_renderer = NULL; + } window->m_hwnd = NULL; return DefWindowProc(wnd, message, wparam, lparam); |