diff options
Diffstat (limited to 'ui/base/keycodes/keyboard_code_conversion_gtk.cc')
-rw-r--r-- | ui/base/keycodes/keyboard_code_conversion_gtk.cc | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/ui/base/keycodes/keyboard_code_conversion_gtk.cc b/ui/base/keycodes/keyboard_code_conversion_gtk.cc index c55476a..0eff5aa 100644 --- a/ui/base/keycodes/keyboard_code_conversion_gtk.cc +++ b/ui/base/keycodes/keyboard_code_conversion_gtk.cc @@ -625,9 +625,14 @@ int GdkNativeKeyCodeForWindowsKeyCode(KeyboardCode keycode, bool shift) { int keyval = GdkKeyCodeForWindowsKeyCode(keycode, shift); GdkKeymapKey* keys; gint n_keys; - if (keyval && gdk_keymap_get_entries_for_keyval(0, keyval, &keys, &n_keys)) - return keys[0].keycode; - return 0; + + int native_keycode = 0; + if (keyval && gdk_keymap_get_entries_for_keyval(0, keyval, &keys, &n_keys)) { + native_keycode = keys[0].keycode; + g_free(keys); + } + + return native_keycode; } KeyboardCode KeyboardCodeFromGdkEventKey(GdkEventKey* event) { |