diff options
author | Changwoo Ryu <cwryu@debian.org> | 2013-02-13 02:44:00 +0000 |
---|---|---|
committer | Changwoo Ryu <cwryu@debian.org> | 2013-02-16 10:04:47 +0900 |
commit | 658e7c45353d625dc30852f49fb92a1959f615fa (patch) | |
tree | dc7bd692bd12e207c246bec2d11ca7257787ff88 /gtk/gtkimmodule.c | |
parent | 0fe08d43b51def30d4ef5ffdb36ed991af8f87d5 (diff) | |
download | gtk+-658e7c45353d625dc30852f49fb92a1959f615fa.tar.gz |
immodule: Fix context ID lookup on module with multiple contexts
https://bugzilla.gnome.org/show_bug.cgi?id=690247
Diffstat (limited to 'gtk/gtkimmodule.c')
-rw-r--r-- | gtk/gtkimmodule.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/gtk/gtkimmodule.c b/gtk/gtkimmodule.c index 0f45847c61..5e35498a22 100644 --- a/gtk/gtkimmodule.c +++ b/gtk/gtkimmodule.c @@ -646,12 +646,14 @@ lookup_immodule (gchar **immodules_list) if (g_strcmp0 (*immodules_list, SIMPLE_ID) == 0) return SIMPLE_ID; else - { - GtkIMModule *module; - module = g_hash_table_lookup (contexts_hash, *immodules_list); - if (module) - return module->contexts[0]->context_id; - } + { + gboolean found; + gchar *context_id; + found = g_hash_table_lookup_extended (contexts_hash, *immodules_list, + &context_id, NULL); + if (found) + return context_id; + } immodules_list++; } |