Index: panel-plugin/verve-plugin.c =================================================================== --- panel-plugin/verve-plugin.c (revision 1902) +++ panel-plugin/verve-plugin.c (working copy) @@ -102,7 +102,7 @@ G_LOCK (plugin_completion_mutex); /* Build merged list */ - items = g_list_concat (NULL, binaries); + items = g_list_copy (binaries); for (iter = g_list_first (history); iter != NULL; iter = g_list_next (iter)) items = g_list_insert_sorted (items, iter->data, (GCompareFunc) g_utf8_collate); @@ -761,7 +761,6 @@ VervePlugin *verve) { GtkWidget *dialog; - GtkWidget *header; GtkWidget *frame; GtkWidget *bin1; GtkWidget *bin2; Index: panel-plugin/verve-history.c =================================================================== --- panel-plugin/verve-history.c (revision 1902) +++ panel-plugin/verve-history.c (working copy) @@ -281,7 +281,6 @@ if (G_LIKELY (handle != NULL)) { GList *current; - GIOStatus status; gsize bytes; int i; Index: panel-plugin/verve.c =================================================================== --- panel-plugin/verve.c (revision 1902) +++ panel-plugin/verve.c (working copy) @@ -197,7 +197,6 @@ pcre *pattern; const gchar *error; int error_offset; - int count; int ovector[30]; gboolean success = FALSE; @@ -244,7 +243,6 @@ const gchar *error; pcre *pattern; int error_offset; - int count; int ovector[30]; gboolean success = FALSE; Index: panel-plugin/verve-env.c =================================================================== --- panel-plugin/verve-env.c (revision 1902) +++ panel-plugin/verve-env.c (working copy) @@ -190,6 +190,7 @@ iter = g_list_next (iter); } g_list_free (env->binaries); + env->binaries = NULL; } } @@ -233,6 +234,9 @@ /* Iterate over paths list */ for (i=0; !env->load_thread_cancelled && iload_thread_cancelled && (current = g_dir_read_name (dir)) != NULL) { @@ -252,7 +251,7 @@ filename = g_filename_display_name (current); /* Avoid duplicates */ - for (lp = g_list_first (env->binaries); lp != NULL; lp = lp->next) + for (lp = env->binaries; lp != NULL; lp = lp->next) if (g_ascii_strcasecmp (lp->data, filename) == 0) break; @@ -263,10 +262,11 @@ gchar *path = g_build_filename (paths[i], current, NULL); /* Check if the path refers to an executable */ - if (g_file_test (path, G_FILE_TEST_IS_EXECUTABLE)) + if (g_file_test (path, G_FILE_TEST_IS_EXECUTABLE) && + !g_file_test (path, G_FILE_TEST_IS_DIR)) { /* Add file filename to the list */ - env->binaries = g_list_prepend (env->binaries, g_strdup (filename)); + env->binaries = g_list_prepend (env->binaries, filename); /* No need to free the filename later in this function */ filename = NULL;