Add a safeguard on menu cache returning items with empty Exec line.
authorLutz Fischer <fischerlutz76@yahoo.com>
Sun, 13 Nov 2016 22:32:29 +0000 (00:32 +0200)
committerAndriy Grytsenko <andrej@rep.kiev.ua>
Sun, 13 Nov 2016 22:32:29 +0000 (00:32 +0200)
ChangeLog
plugins/launchtaskbar.c

index ff33d7c..fd0d6f2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -64,6 +64,7 @@
 * Fixed invalid memory access in weather plugin.
 * Fixed incorrect reporting units on "Feel" value in weather plugin. YQL
     always reports Fahrenheit degrees there.
+* Added a safeguard on menu cache returning items with empty Exec line.
 
 0.8.2
 -------------------------------------------------------------------------
index 4daf409..b4fe213 100644 (file)
@@ -268,7 +268,7 @@ static FmPath *f_find_menu_launchbutton_recursive(Window win, LaunchTaskBarPlugi
     if (l == NULL) for (l = apps; l; l = l->next)
     {
         exec = menu_cache_app_get_exec(MENU_CACHE_APP(l->data));
-        if (exec[0] != '/' && strncmp(exec, short_exec, len) == 0 &&
+        if (exec && exec[0] != '/' && strncmp(exec, short_exec, len) == 0 &&
             (exec[len] == ' ' || exec[len] == 0))
             break;
     }
@@ -280,7 +280,7 @@ static FmPath *f_find_menu_launchbutton_recursive(Window win, LaunchTaskBarPlugi
         for (l = apps; l; l = l->next)
         {
             exec = menu_cache_app_get_exec(MENU_CACHE_APP(l->data));
-            if (exec[0] == '/' && strncmp(exec, exec_bin, len) == 0 &&
+            if (exec && exec[0] == '/' && strncmp(exec, exec_bin, len) == 0 &&
                 (exec[len] == ' ' || exec[len] == 0))
                 break;
         }