im.pidgin.pidgin.2.2.2: d32cf054e6e10e37f74993912212ee795bd854e0

lschiere at pidgin.im lschiere at pidgin.im
Fri Oct 19 17:14:17 EDT 2007


-----------------------------------------------------------------
Revision: d32cf054e6e10e37f74993912212ee795bd854e0
Ancestor: ac2f2fb104d44271881653abb6c07f20e2097f5e
Author: lschiere at pidgin.im
Date: 2007-10-19T17:10:50
Branch: im.pidgin.pidgin.2.2.2

Modified files:
        finch/libgnt/gntmain.c

ChangeLog: 

applied changes from 4bbc209c8076ef89135700af844ec6bb04602c0a
             through 43311ea3963dadd958af56847cc36df60507673f

-------------- next part --------------
============================================================
--- finch/libgnt/gntmain.c	681d2e87ecf9a093e70f4c6a7dba4c345a0a5e07
+++ finch/libgnt/gntmain.c	7ddfbc8f64142c8b3f27e408710c3e096e961fdd
@@ -223,6 +223,7 @@ io_invoke(GIOChannel *source, GIOConditi
 	char keys[256];
 	int rd;
 	char *k;
+	char *cvrt = NULL;
 
 	if (wm->mode == GNT_KP_MODE_WAIT_ON_CHILD)
 		return FALSE;
@@ -243,15 +244,16 @@ io_invoke(GIOChannel *source, GIOConditi
 		raise(SIGABRT);
 	}
 
-	gnt_wm_set_event_stack(wm, TRUE);
 	rd += HOLDING_ESCAPE;
+	if (HOLDING_ESCAPE)
+		keys[0] = '\033';
 	keys[rd] = 0;
-	if (mouse_enabled && detect_mouse_action(keys))
-		goto end;
+	gnt_wm_set_event_stack(wm, TRUE);
 
-	if (HOLDING_ESCAPE)
-		keys[0] = '\033';
-	k = keys;
+	cvrt = g_locale_to_utf8(keys, rd, (gsize*)&rd, NULL, NULL);
+	k = cvrt ? cvrt : keys;
+	if (mouse_enabled && detect_mouse_action(k))
+		goto end;
 
 #if 0
 	/* I am not sure what's happening here. If this actually does something,
@@ -290,6 +292,7 @@ end:
 	}
 end:
 	gnt_wm_set_event_stack(wm, FALSE);
+	g_free(cvrt);
 	return TRUE;
 }
 


More information about the Commits mailing list