diff --git a/src/hyprpicker.cpp b/src/hyprpicker.cpp index e89513b..55e5f30 100644 --- a/src/hyprpicker.cpp +++ b/src/hyprpicker.cpp @@ -35,8 +35,10 @@ void CHyprpicker::init() { //renderSurface(m_pLastSurface); } - wl_display_disconnect(m_pWLDisplay); - m_pWLDisplay = nullptr; + if (m_pWLDisplay) { + wl_display_disconnect(m_pWLDisplay); + m_pWLDisplay = nullptr; + } } void CHyprpicker::finish(int code) { @@ -46,6 +48,11 @@ void CHyprpicker::finish(int code) { destroyBuffer(&ls->screenBuffer); } + if (m_pWLDisplay) { + wl_display_disconnect(m_pWLDisplay); + m_pWLDisplay = nullptr; + } + exit(code); }