From 26b62816a9d7a3a8db15fe47795c4d9cfdeb4db2 Mon Sep 17 00:00:00 2001 From: Johns Date: Mon, 25 Feb 2013 15:30:27 +0100 Subject: Fix bug: Crash in xcb_key_symbols_get_keysym. + some key code fixes. --- video.c | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/video.c b/video.c index 583ae8b..54d1179 100644 --- a/video.c +++ b/video.c @@ -509,26 +509,29 @@ static void VideoKeyPress(const xcb_key_press_event_t * event) FeedKeyPress("XKeySym", "Blue", 0, 0); break; + case XF86XK_HomePage: + FeedKeyPress("XKeySym", "XF86HomePage", 0, 0); + break; case XF86XK_AudioLowerVolume: - FeedKeyPress("XKeySym", "AudioLowerVolume", 0, 0); + FeedKeyPress("XKeySym", "XF86AudioLowerVolume", 0, 0); break; case XF86XK_AudioMute: - FeedKeyPress("XKeySym", "AudioMute", 0, 0); + FeedKeyPress("XKeySym", "XF86AudioMute", 0, 0); break; case XF86XK_AudioRaiseVolume: - FeedKeyPress("XKeySym", "AudioRaiseVolume", 0, 0); + FeedKeyPress("XKeySym", "XF86AudioRaiseVolume", 0, 0); break; case XF86XK_AudioPlay: - FeedKeyPress("XKeySym", "AudioPlay", 0, 0); + FeedKeyPress("XKeySym", "XF86AudioPlay", 0, 0); break; case XF86XK_AudioStop: - FeedKeyPress("XKeySym", "AudioStop", 0, 0); + FeedKeyPress("XKeySym", "XF86AudioStop", 0, 0); break; case XF86XK_AudioPrev: - FeedKeyPress("XKeySym", "AudioPrev", 0, 0); + FeedKeyPress("XKeySym", "XF86AudioPrev", 0, 0); break; case XF86XK_AudioNext: - FeedKeyPress("XKeySym", "AudioNext", 0, 0); + FeedKeyPress("XKeySym", "XF86AudioNext", 0, 0); break; default: @@ -759,6 +762,10 @@ void VideoExit(void) xcb_free_pixmap(Connection, VideoPixmap); VideoPixmap = XCB_NONE; } + if (XcbKeySymbols != XCB_NONE) { + xcb_key_symbols_free(XcbKeySymbols); + XcbKeySymbols = XCB_NONE; + } if (Connection) { xcb_flush(Connection); -- cgit v1.2.3