Enlightenment CVS committal

Author  : devilhorns
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/bin


Modified Files:
        e_int_config_imc.c 


Log Message:
Fix segfault in new input config dialog.
Fix potential segfault with a printf.
Some formatting.

===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_imc.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- e_int_config_imc.c  30 Nov 2006 16:35:56 -0000      1.1
+++ e_int_config_imc.c  30 Nov 2006 17:20:36 -0000      1.2
@@ -58,10 +58,9 @@
    cfdata->imc_basic_list = evas_list_sort(cfdata->imc_basic_list, 
         evas_list_count(cfdata->imc_basic_list), 
         _basic_list_sort_cb);
-   
-   cfdata->imc_current = strdup(e_config->input_method);
-   
-   return;
+
+   if (e_config->input_method)
+     cfdata->imc_current = strdup(e_config->input_method);
 }
 
 static void *
@@ -78,13 +77,13 @@
 static void
 _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
 {
-
    E_FREE(cfdata->imc_current);
    
-   while (cfdata->imc_basic_list) { 
+   while (cfdata->imc_basic_list) 
+     { 
        free(cfdata->imc_basic_list->data); 
        cfdata->imc_basic_list = evas_list_remove_list(cfdata->imc_basic_list, 
cfdata->imc_basic_list);
-   }
+     }
 
    free(cfdata);
 }
@@ -92,9 +91,10 @@
 static int
 _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
 {      
-   printf("Setting input method to %s\n", cfdata->imc_current); 
    if (cfdata->imc_current)
      {
+       printf("Setting input method to %s\n", cfdata->imc_current); 
+
        if (e_config->input_method) 
evas_stringshare_del(e_config->input_method);
        e_config->input_method = evas_stringshare_add(cfdata->imc_current);
        e_intl_input_method_set(e_config->input_method);
@@ -168,7 +168,6 @@
 
    e_dialog_resizable_set(cfd->dia, 1);
    return o;
-
 }
 
 static int



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to