Fix SEGV in im-ibus.so on Chromium OS
authorYusuke Sato <yusukes@chromium.org>
Fri, 22 Apr 2011 11:17:14 +0000 (20:17 +0900)
committerYusuke Sato <yusukes@chromium.org>
Fri, 22 Apr 2011 11:17:14 +0000 (20:17 +0900)
Review URL: http://codereview.appspot.com/4440060

client/gtk2/ibusimcontext.c

index dc3640e..ebae09d 100644 (file)
@@ -270,7 +270,7 @@ _process_key_event_done (GObject      *object,
 static void
 _request_surrounding_text (IBusIMContext *context, gboolean force)
 {
-    if (context->enable &&
+    if (context && context->enable &&
         (context->caps & IBUS_CAP_SURROUNDING_TEXT) != 0 &&
         (force ||
          ibus_input_context_needs_surrounding_text (context->ibuscontext))) {
@@ -368,9 +368,8 @@ _key_snooper_cb (GtkWidget   *widget,
 
     } while (0);
 
-    _request_surrounding_text (ibusimcontext, FALSE);
-
     if (ibusimcontext != NULL) {
+        _request_surrounding_text (ibusimcontext, FALSE);
         ibusimcontext->time = event->time;
     }