1
0
Fork 0
mirror of https://github.com/gwm17/glfw.git synced 2024-11-26 20:28:49 -05:00

Wayland: Fix glfwTerminate segfault on failed init

Closes #1172.
This commit is contained in:
Emmanuel Gil Peyrot 2018-01-05 21:56:27 +01:00 committed by Camilla Löwy
parent 2c1fc13ee4
commit 93186e4999

View File

@ -775,15 +775,22 @@ void _glfwPlatformTerminate(void)
_glfwTerminateJoysticksLinux(); _glfwTerminateJoysticksLinux();
#ifdef HAVE_XKBCOMMON_COMPOSE_H #ifdef HAVE_XKBCOMMON_COMPOSE_H
xkb_compose_state_unref(_glfw.wl.xkb.composeState); if (_glfw.wl.xkb.composeState)
xkb_compose_state_unref(_glfw.wl.xkb.composeState);
#endif #endif
xkb_keymap_unref(_glfw.wl.xkb.keymap); if (_glfw.wl.xkb.keymap)
xkb_state_unref(_glfw.wl.xkb.state); xkb_keymap_unref(_glfw.wl.xkb.keymap);
xkb_context_unref(_glfw.wl.xkb.context); if (_glfw.wl.xkb.state)
xkb_state_unref(_glfw.wl.xkb.state);
if (_glfw.wl.xkb.context)
xkb_context_unref(_glfw.wl.xkb.context);
dlclose(_glfw.wl.xkb.handle); if (_glfw.wl.xkb.handle)
_glfw.wl.xkb.handle = NULL; {
_glfw_dlclose(_glfw.wl.xkb.handle);
_glfw.wl.xkb.handle = NULL;
}
if (_glfw.wl.cursorTheme) if (_glfw.wl.cursorTheme)
wl_cursor_theme_destroy(_glfw.wl.cursorTheme); wl_cursor_theme_destroy(_glfw.wl.cursorTheme);