Enlightenment CVS committal

Author  : devilhorns
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/modules/fileman


Modified Files:
        e_fwin.c 


Log Message:

When using the Open With dialog, if user choose nothing and clicked open,
then a segfault would occur. Fix seggy :) (bug #420)

Minor formatting fixes.

===================================================================
RCS file: /cvs/e/e17/apps/e/src/modules/fileman/e_fwin.c,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -3 -r1.26 -r1.27
--- e_fwin.c    6 Apr 2008 02:08:09 -0000       1.26
+++ e_fwin.c    6 May 2008 05:05:13 -0000       1.27
@@ -709,7 +709,7 @@
 _e_fwin_cb_menu_open_with(void *data, E_Menu *m, E_Menu_Item *mi)
 {
    E_Fwin *fwin;
-   Evas_List *selected;
+   Evas_List *selected = NULL;
    
    fwin = data;
    selected = e_fm2_selected_list_get(fwin->fm_obj);
@@ -784,6 +784,9 @@
      desktop = efreet_util_desktop_file_id_find(fad->app1);
    else if (fad->app2) 
      desktop = efreet_util_desktop_file_id_find(fad->app2);
+
+   if ((!desktop) && (!fad->exec_cmd)) return;
+
    if ((desktop) || (strcmp(fad->exec_cmd, "")))
      {
        getcwd(pcwd, sizeof(pcwd));
@@ -842,20 +845,18 @@
             if (fad->fwin->win)
               {
                  if (desktop)
-                    e_exec(fad->fwin->win->border->zone, desktop, NULL, files,
-                           "fwin");
+                    e_exec(fad->fwin->win->border->zone, desktop, NULL, files,
+                           "fwin");
               }
             else if (fad->fwin->zone)
               {
                  if (desktop)
-                    e_exec(fad->fwin->zone, desktop, NULL, files, "fwin");
+                    e_exec(fad->fwin->zone, desktop, NULL, files, "fwin");
               }
 
             // Free fake .desktop
             if (!strcmp(fad->exec_cmd, ""))
-              {
-                 efreet_desktop_free(desktop);
-              }
+               efreet_desktop_free(desktop);
 
             ecore_list_destroy(files);     
          }
@@ -1084,7 +1085,7 @@
               {
                  if (S_ISDIR(ici->statinfo.st_mode))
                    {
-                      if (!fileman_config->view.open_dirs_in_place || 
fwin->zone) 
+                      if ((!fileman_config->view.open_dirs_in_place) || 
(fwin->zone)) 
                         {
                            if (fwin->win)
                              fwin2 = _e_fwin_new(fwin->win->container, NULL, 
ici->real_link);



-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to