/* TODO: move eet file handling to eet_cache.c */
/* TODO: add no_display check, as we might want only displayable items */
/* TODO: Consider flushing local cache after a idling a while */
-/* TODO: Add special check for glob "*" */
#undef alloca
#ifdef HAVE_ALLOCA_H
if (!efreet_cache_check(&cache, efreet_desktop_util_cache_file(), EFREET_DESKTOP_UTILS_CACHE_MAJOR)) return NULL;
if (!glob) return NULL;
+ if (!strcmp(glob, "*"))
+ glob = NULL;
names = efreet_util_cache_names(efreet_array_string_edd(), "exec_list");
if (!names) return NULL;
exe = ecore_file_app_exe_get(names->array[i]);
if (!exe) continue;
- if (!efreet_util_glob_match(exe, glob))
+ if (glob && !efreet_util_glob_match(exe, glob))
{
free(exe);
continue;
if (!efreet_cache_check(&cache, efreet_desktop_util_cache_file(), EFREET_DESKTOP_UTILS_CACHE_MAJOR)) return NULL;
if (!what) return NULL;
+ if (!strcmp(what, "*"))
+ what = NULL;
snprintf(key, sizeof(key), "%s_list", search);
names = efreet_util_cache_names(efreet_array_string_edd(), key);
unsigned int j;
Efreet_Desktop *desk;
- if (!efreet_util_glob_match(names->array[i], what)) continue;
+ if (what && !efreet_util_glob_match(names->array[i], what)) continue;
if (!hash)
{