Author: ek.kato
Date: Fri Jun 29 23:14:59 2007
New Revision: 4637

Modified:
   trunk/gtk/compose.c
   trunk/gtk/gtk-im-uim.c

Log:
* gtk/compose.c
* gtk/gtk-im-uim.c
  - Use g_free() instead of free() for string allocated by glib
    (bug #11406).


Modified: trunk/gtk/compose.c
==============================================================================
--- trunk/gtk/compose.c (original)
+++ trunk/gtk/compose.c Fri Jun 29 23:14:59 2007
@@ -440,7 +440,7 @@
        return 0;
     len = strlen(mb);
     strlcpy(buf, mb, MB_LEN_MAX + 1);
-    free(mb);
+    g_free(mb);
 
     return len;
 }
@@ -611,7 +611,12 @@
        goto error;
     }
 
-    rhs_string_utf8 = g_locale_to_utf8(rhs_string_mb, -1, NULL, NULL, NULL);
+       {
+               char *result;
+               result = g_locale_to_utf8(rhs_string_mb, -1, NULL, NULL, NULL);
+               rhs_string_utf8 = strdup(result);
+               g_free(result);
+       }
 
     for (i = 0; i < n; i++) {
        for (p = *top; p; p = p->next) {

Modified: trunk/gtk/gtk-im-uim.c
==============================================================================
--- trunk/gtk/gtk-im-uim.c      (original)
+++ trunk/gtk/gtk-im-uim.c      Fri Jun 29 23:14:59 2007
@@ -81,7 +81,7 @@
 
 struct preedit_segment {
   int attr;
-  char *str;
+  gchar *str;
 };
 
 static int im_uim_fd = -1;
@@ -193,7 +193,8 @@
 }
 
 static char *
-get_preedit_segment(struct preedit_segment *ps, PangoAttrList *attrs, char 
*str)
+get_preedit_segment(struct preedit_segment *ps, PangoAttrList *attrs,
+                   gchar *str)
 {
   PangoAttribute *attr;
   const gchar *segment_str = ps->str;
@@ -258,7 +259,7 @@
     }
   }
 
-  str = (char *)realloc(str, strlen(str) + strlen(segment_str) + 1);
+  str = (gchar *)g_realloc(str, strlen(str) + strlen(segment_str) + 1);
   strcat(str, segment_str);
 
   return str;
@@ -564,7 +565,7 @@
   int i;
 
   for (i = 0; i < uic->nr_psegs; i++)
-    free(uic->pseg[i].str);
+    g_free(uic->pseg[i].str);
   free(uic->pseg);
 
   uic->pseg = NULL;
@@ -1113,7 +1114,7 @@
 im_uim_get_preedit_string(GtkIMContext *ic, gchar **str, PangoAttrList **attrs,
                          gint *cursor_pos)
 {
-  char *tmp;
+  gchar *tmp;
   int i, pos = 0;
   IMUIMContext *uic = IM_UIM_CONTEXT(ic);
 
@@ -1137,7 +1138,7 @@
   if (str)
     *str = tmp;
   else
-    free(tmp);
+    g_free(tmp);
 }
 
 static void

Reply via email to