diff -ru orig/src/main.c new/src/main.c --- orig/src/main.c 2004-12-24 12:10:46.000000000 -0700 +++ new/src/main.c 2005-01-27 09:48:05.329312480 -0700 @@ -221,6 +221,7 @@ GtkTreeIter iter; GdkPixbuf *icon = NULL; gchar *name = NULL; + gchar *name_lower = NULL; gchar *img = NULL; gchar *dcat = NULL; gchar *comment = NULL; @@ -234,12 +235,14 @@ { if (!(xfce_desktop_entry_get_string (dentry, "Categories", FALSE, &dcat) && dcat)) { + g_free(name); return FALSE; } if (g_pattern_match_string (pcat, g_utf8_casefold(dcat, -1)) == FALSE) { g_free(dcat); + g_free(name); return FALSE; } } @@ -247,9 +250,15 @@ if (psearch) { xfce_desktop_entry_get_string (dentry, "Comment", FALSE, &comment); + xfce_desktop_entry_get_string (dentry, "Name", FALSE, &name_lower); + comment = g_utf8_strdown(comment, -1); + name_lower = g_utf8_strdown(name_lower, -1); if (!(comment && g_pattern_match_string (psearch, g_utf8_casefold(comment, -1))) && - !g_pattern_match_string (psearch, name)) + !g_pattern_match_string (psearch, name_lower)) { + g_free(name); + g_free(name_lower); + g_free(comment); return FALSE; } } @@ -275,6 +284,18 @@ { g_object_unref (icon); } + if (comment) + { + g_free(comment); + } + if (name_lower) + { + g_free(name_lower); + } + if (dcat) + { + g_free(dcat); + } return TRUE; }