summaryrefslogtreecommitdiff
path: root/pcr/bamf/fix-current-desktop.patch
blob: c4837c6ec5334ede1ccce7dbffa2ca3bbb59fd66 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
diff -Naur bamf-0.3.4.orig/src/bamf-matcher.c bamf-0.3.4/src/bamf-matcher.c
--- bamf-0.3.4.orig/src/bamf-matcher.c	2012-10-11 09:40:29.122317000 +0200
+++ bamf-0.3.4/src/bamf-matcher.c	2012-12-04 04:44:07.236990092 +0100
@@ -827,6 +827,7 @@
                             GHashTable *desktop_class_table)
 {
   GDesktopAppInfo *desktop_file;
+  const char *current_desktop;
   char *exec;
   char *path;
   GString *desktop_id; /* is ok... really */
@@ -840,7 +841,9 @@
       return;
     }
 
-  if (!g_desktop_app_info_get_show_in (desktop_file, g_getenv ("XDG_CURRENT_DESKTOP")))
+  current_desktop = g_getenv ("XDG_CURRENT_DESKTOP");
+
+  if (current_desktop && !g_desktop_app_info_get_show_in (desktop_file, current_desktop))
     {
       g_object_unref (desktop_file);
       return;
@@ -848,7 +851,7 @@
 
   exec = g_strdup (g_app_info_get_commandline (G_APP_INFO (desktop_file)));
 
-  if (!exec)
+  if (!exec || exec[0] == '\0')
     {
       g_object_unref (desktop_file);
       return;