aboutsummaryrefslogtreecommitdiff
path: root/src/messages-service.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/messages-service.c')
-rw-r--r--src/messages-service.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/messages-service.c b/src/messages-service.c
index e8fe576..a21435c 100644
--- a/src/messages-service.c
+++ b/src/messages-service.c
@@ -104,10 +104,15 @@ serverList_equal (gconstpointer a, gconstpointer b)
pa = (serverList_t *)a;
pb = (serverList_t *)b;
- const gchar * pas = INDICATE_LISTENER_SERVER_DBUS_NAME(pa->server);
- const gchar * pbs = INDICATE_LISTENER_SERVER_DBUS_NAME(pb->server);
-
- return g_strcmp0(pas, pbs);
+ const gchar * pan = INDICATE_LISTENER_SERVER_DBUS_NAME(pa->server);
+ const gchar * pbn = INDICATE_LISTENER_SERVER_DBUS_NAME(pb->server);
+ const gchar * pap = indicate_listener_server_get_dbuspath(pa->server);
+ const gchar * pbp = indicate_listener_server_get_dbuspath(pb->server);
+
+ if (g_strcmp0(pan, pbn) == 0)
+ return g_strcmp0(pap, pbp);
+ else
+ return 1;
}
static gint
@@ -1296,6 +1301,7 @@ build_launcher (gpointer data)
g_file_get_contents(path, &desktop, NULL, NULL);
if (desktop == NULL) {
+ g_free(path);
return FALSE;
}
@@ -1305,6 +1311,7 @@ build_launcher (gpointer data)
build_launcher_core(trimdesktop);
g_free(trimdesktop);
+ g_free(path);
return FALSE;
}
@@ -1318,6 +1325,7 @@ build_launcher_keyfile (gpointer data)
build_launcher_core(desktop);
g_free(desktop);
}
+ g_free(path);
return FALSE;
}