efreet desktop tracking - fix monitoring of dirs of custom desktops
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>
Wed, 2 Dec 2015 11:29:31 +0000 (20:29 +0900)
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>
Wed, 2 Dec 2015 11:53:27 +0000 (20:53 +0900)
@fix

this is wrong - start monitoring every/any dir in which a desktop file
exists that we load a desktop file from. imagine you browse directories
in efm with lots of desktop files in them - we end up monitoring lots
of directories that we then rememebr and don't un-monitor. this
disables monitoring of dirs from which we load a .desktop file from to
fix this.

src/bin/efreet/efreetd_cache.c
src/lib/efreet/efreet_desktop.c

index e1896e7..6fa8854 100644 (file)
@@ -698,7 +698,9 @@ error:
 static void
 read_lists(void)
 {
-   fill_list("extra_desktops.dirs", &desktop_extra_dirs);
+// dont use extra dirs as the only way to get extra dirs is by loading a
+// specific desktop file at a specific path, and this is wrong
+//   fill_list("extra_desktops.dirs", &desktop_extra_dirs);
    fill_list("extra_icons.dirs", &icon_extra_dirs);
    fill_list("icons.exts", &icon_exts);
 }
index 3de19be..a49a975 100644 (file)
@@ -154,7 +154,12 @@ efreet_desktop_get(const char *file)
 
     desktop = efreet_desktop_new(file);
     if (!desktop) return NULL;
-
+    return desktop;
+   // this is wrong - start monitoring every/any dir in which a desktop file
+   // exists that we load a desktop file from. imagine you browse directories
+   // in efm with lots of desktop files in them - we end up monitoring lots
+   // of directories that we then rememebr and don't un-monitor.
+#if 0
     /* If we didn't find this file in the eet cache, add path to search path */
     if (!desktop->eet)
     {
@@ -185,6 +190,7 @@ efreet_desktop_get(const char *file)
         }
     }
     return desktop;
+#endif
 }
 
 EAPI int