diff --git a/source/Platform/Unix/X11Display.cpp b/source/Platform/Unix/X11Display.cpp index 083546e..f2f5289 100644 --- a/source/Platform/Unix/X11Display.cpp +++ b/source/Platform/Unix/X11Display.cpp @@ -78,12 +78,13 @@ bool X11Display::create(DisplayDescription description) void X11Display::destroy() { - if (m_win) { - X11WindowEventHandler::unregisterHandler(m_disp, m_win); - ::XDestroyWindow(m_disp, m_win); - } - if (m_disp) { + + if (m_win) { + X11WindowEventHandler::unregisterHandler(m_disp, m_win); + ::XDestroyWindow(m_disp, m_win); + } + XReleaseDisplay(m_disp); m_disp = NULL; }