diff --git a/gtk/main.c b/gtk/main.c index 5e1cfed..11f14da 100644 --- a/gtk/main.c +++ b/gtk/main.c @@ -158,15 +158,19 @@ getpreedit(GtkIMContext *ctx, gchar **str, PangoAttrList **attrs, PangoAttribute *u; im = (Im*)ctx; - *str = g_strdup(im->pre); - *attrs = pango_attr_list_new(); - if(im->prelen > 0){ - u = pango_attr_underline_new(PANGO_UNDERLINE_SINGLE); - u->start_index = 0; - u->end_index = im->prelen; - pango_attr_list_insert(*attrs, u); + if(str) + *str = g_strdup(im->pre); + if(attrs){ + *attrs = pango_attr_list_new(); + if(im->prelen > 0){ + u = pango_attr_underline_new(PANGO_UNDERLINE_SINGLE); + u->start_index = 0; + u->end_index = im->prelen; + pango_attr_list_insert(*attrs, u); + } } - *cursor_pos = g_utf8_strlen(im->pre, -1); + if(cursor_pos) + *cursor_pos = g_utf8_strlen(im->pre, -1); } static void diff --git a/run.sh b/run.sh index 7238510..e0b6aa5 100755 --- a/run.sh +++ b/run.sh @@ -1,8 +1,7 @@ #!/bin/sh +cd "$(dirname "$0")" pkill strans -pkill strans-xim - sleep 1 ./strans map font & sleep 1