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