MPlist *p = mplist_value (plist);
       MSymbol status_symbol;
 
-      if (status == MIM_STATUS_NO)
-       status = MIM_STATUS_DEFAULT;
       p = mplist_next (mplist_next (p));
       status_symbol = mplist_value (p);
       if (status_symbol == Mconfigured)
        return MIM_STATUS_MODIFIED;
       if (status_symbol == Mcustomized)
        status = MIM_STATUS_CUSTOMIZED;
+      else if (status == MIM_STATUS_NO)
+       status = MIM_STATUS_DEFAULT;
     }
   for (plist = minput_get_command (lang, name, Mnil);
        plist && mplist_key (plist) != Mnil; plist = mplist_next (plist))
       MPlist *p = mplist_value (plist);
       MSymbol status_symbol;
 
-      if (status == MIM_STATUS_NO)
-       status = MIM_STATUS_DEFAULT;
       p = mplist_next (mplist_next (p));
       status_symbol = mplist_value (p);
       if (status_symbol == Mconfigured)
        return MIM_STATUS_MODIFIED;
       if (status_symbol == Mcustomized)
        status = MIM_STATUS_CUSTOMIZED;
+      else if (status == MIM_STATUS_NO)
+       status = MIM_STATUS_DEFAULT;
     }
   return status;
 }
                      FALSE, FALSE, 0);
 
   gtk_widget_show_all (dialog);
-  gtk_dialog_run (dialog);
+  gtk_dialog_run (GTK_DIALOG (dialog));
   gtk_widget_destroy (dialog);
 }
 
 
     {
       MText *mt;
 
-      mt = mtext_from_data (text, strlen (text), MTEXT_FORMAT_UTF_8);
+      mt = mconv_decode_buffer (Mcoding_utf_8, text, strlen (text));
       mplist_add (plist, Mtext, mt);
       CONFIG_VARIABLE (plist);
       m17n_object_unref (mt);
     {
       MText *mt;
 
-      mt = mtext_from_data (text, strlen (text), MTEXT_FORMAT_UTF_8);
+      mt = mconv_decode_buffer (Mcoding_utf_8, text, strlen (text));
       mplist_add (plist, Mtext, mt);
       CONFIG_VARIABLE (plist);
       m17n_object_unref (mt);