Enlightenment CVS committal

Author  : onefang
Project : e17
Module  : libs/ecore

Dir     : e17/libs/ecore/src/lib/ecore_desktop


Modified Files:
        Ecore_Desktop.h ecore_desktop_icon.c 


Log Message:
Fix a crash reported by Hawkwind.

===================================================================
RCS file: /cvs/e/e17/libs/ecore/src/lib/ecore_desktop/Ecore_Desktop.h,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -3 -r1.41 -r1.42
--- Ecore_Desktop.h     15 Oct 2006 19:09:07 -0000      1.41
+++ Ecore_Desktop.h     15 Oct 2006 23:08:53 -0000      1.42
@@ -86,12 +86,14 @@
    unsigned char       hicolor:1;
    /* Actually calling this st_mtime causes compile issues, must be some 
strange macros at work. */
    time_t              mtime;  /* For checking if the cache is valid. */
+   double              last_checked;
 };
 typedef struct _Ecore_Desktop_Icon_Theme Ecore_Desktop_Icon_Theme;
 
 struct _Ecore_Desktop_Icon_Theme_Directory
 {
    Ecore_Hash         *icons;
+   char               *path;
    char               *full_path;
    char               *type;
    int                 size, minimum, maximum, threshold;
===================================================================
RCS file: /cvs/e/e17/libs/ecore/src/lib/ecore_desktop/ecore_desktop_icon.c,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -3 -r1.41 -r1.42
--- ecore_desktop_icon.c        15 Oct 2006 19:09:07 -0000      1.41
+++ ecore_desktop_icon.c        15 Oct 2006 23:08:53 -0000      1.42
@@ -473,9 +473,9 @@
         theme_dir = ecore_file_get_dir(theme_path);
         if (theme_dir)
            icon_theme = (char *)ecore_file_get_file(theme_dir);
-//#ifdef DEBUG
+#ifdef DEBUG
         printf("LOADING THEME %s  -   %s\n", icon_theme, theme_path);
-//#endif
+#endif
       }
 
    result = ecore_hash_get(icon_theme_cache, icon_theme);
@@ -490,6 +490,7 @@
 #endif
        theme_path = ecore_desktop_paths_file_find(ecore_desktop_paths_icons, 
icn,
                                                   2, NULL, NULL);
+       if (!theme_path)  goto error;
         theme_dir = ecore_file_get_dir(theme_path);
      }
    if (!theme_path) goto error;
@@ -545,6 +546,7 @@
             char *size, *minsize, *maxsize, *threshold;
              char full_path[PATH_MAX];
 
+             dir->path = strdup(directory);
             snprintf(full_path, PATH_MAX, "%s/%s", theme_dir, directory);
              dir->full_path = strdup(full_path);
             value = ecore_hash_get(sub_group, "Type");
@@ -665,6 +667,8 @@
 _ecore_desktop_icon_theme_directory_destroy(Ecore_Desktop_Icon_Theme_Directory 
*
                                            icon_theme_directory)
 {
+   if (icon_theme_directory->path)
+      free(icon_theme_directory->path);
    if (icon_theme_directory->full_path)
       free(icon_theme_directory->full_path);
    if (icon_theme_directory->type)



-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to