Enlightenment CVS committal

Author  : jethomas
Project : e17
Module  : libs/ewl

Dir     : e17/libs/ewl/src/lib


Modified Files:
        ewl_filepicker.c 


Log Message:
Fix more memory leaks

===================================================================
RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_filepicker.c,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -3 -r1.38 -r1.39
--- ewl_filepicker.c    17 Nov 2007 00:01:55 -0000      1.38
+++ ewl_filepicker.c    17 Nov 2007 16:57:56 -0000      1.39
@@ -566,6 +566,7 @@
        Ewl_Filepicker *fp;
        Ewl_Filelist *fl;
        Ewl_Event_Action_Response *e;
+       char *file;
 
        DENTER_FUNCTION(DLEVEL_STABLE);
        DCHECK_PARAM_PTR(w);
@@ -575,35 +576,32 @@
        fp = data;
        e = ev;
 
+       /* clear the text and get the selected file */
+       ewl_text_clear(EWL_TEXT(fp->file_entry));
+       file = ewl_filelist_selected_file_get(fl);
+
        if (e->response == EWL_FILELIST_EVENT_DIR_CHANGE)
        {
                char *dir;
 
                dir = strdup(ewl_filelist_directory_get(fl));
                ewl_filepicker_path_populate(fp, dir);
-               ewl_text_clear(EWL_TEXT(fp->file_entry));
                FREE(dir);
        }
        else if ((e->response == EWL_FILELIST_EVENT_SELECTION_CHANGE) &&
                                        (!fl->multiselect))
-       {
-               ewl_text_clear(EWL_TEXT(fp->file_entry));
-               ewl_text_text_set(EWL_TEXT(fp->file_entry),
-                               ewl_filelist_selected_file_get(fl));
-       }
+               ewl_text_text_set(EWL_TEXT(fp->file_entry), file);
 
        else if (e->response == EWL_FILELIST_EVENT_MULTI_TRUE)
-       {
-               ewl_text_clear(EWL_TEXT(fp->file_entry));
                ewl_widget_disable(EWL_WIDGET(fp->file_entry));
-       }
 
        else if (e->response == EWL_FILELIST_EVENT_MULTI_FALSE)
        {
                ewl_widget_enable(EWL_WIDGET(fp->file_entry));
-               ewl_text_text_set(EWL_TEXT(fp->file_entry),
-                               ewl_filelist_selected_file_get(fl));
+               ewl_text_text_set(EWL_TEXT(fp->file_entry), file);
        }
+
+       FREE(file);
 
        DLEAVE_FUNCTION(DLEVEL_STABLE);
 }



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to