]> Dogcows Code - chaz/openbox/blobdiff - openbox/translate.c
make the dock's hiding always have at least 1px on screen
[chaz/openbox] / openbox / translate.c
index a9ff3e264c0cf774588235766a7d3ebaab42fefe..b2ae7d677eca6a619df161bba1eca8b7d2a10ea5 100644 (file)
@@ -68,7 +68,7 @@ gboolean translate_button(const gchar *str, guint *state, guint *button)
     gboolean ret = FALSE;
 
     parsed = g_strsplit(str, "-", -1);
-    
+
     /* first, find the button (last token) */
     l = NULL;
     for (i = 0; parsed[i] != NULL; ++i)
@@ -110,7 +110,9 @@ gboolean translate_key(const gchar *str, guint *state, guint *keycode)
     KeySym sym;
 
     parsed = g_strsplit(str, "-", -1);
-    
+
+    *state = *keycode = 0;
+
     /* first, find the key (last token) */
     l = NULL;
     for (i = 0; parsed[i] != NULL; ++i)
@@ -145,7 +147,7 @@ gboolean translate_key(const gchar *str, guint *state, guint *keycode)
         *keycode = XKeysymToKeycode(ob_display, sym);
     }
     if (!*keycode) {
-        g_message(_("Requested key '%s' does not exist on the display"), l); 
+        g_message(_("Requested key '%s' does not exist on the display"), l);
         goto translation_fail;
     }
 
@@ -156,7 +158,7 @@ translation_fail:
     return ret;
 }
 
-const gchar *translate_keycode(guint keycode)
+gchar *translate_keycode(guint keycode)
 {
     KeySym sym;
     const gchar *ret = NULL;
@@ -170,7 +172,7 @@ gunichar translate_unichar(guint keycode)
 {
     gunichar unikey = 0;
 
-    const char *key;
+    char *key;
     if ((key = translate_keycode(keycode)) != NULL &&
         /* don't accept keys that aren't a single letter, like "space" */
         key[1] == '\0')
@@ -179,5 +181,6 @@ gunichar translate_unichar(guint keycode)
         if (unikey == (gunichar)-1 || unikey == (gunichar)-2 || unikey == 0)
             unikey = 0;
     }
+    g_free(key);
     return unikey;
 }
This page took 0.02194 seconds and 4 git commands to generate.