diff -Nur geeqie-1.0-orig/src/filedata.c geeqie-1.0/src/filedata.c --- geeqie-1.0-orig/src/filedata.c 2010-02-17 22:21:19.000000000 +0100 +++ geeqie-1.0/src/filedata.c 2011-03-05 11:07:17.329682947 +0100 @@ -489,6 +489,7 @@ if (stat(sl, &st) == 0) { list = g_list_prepend(list, file_data_new_local(sl, &st, FALSE, FALSE)); + break; /* don't take multiple combinations because of case-insensitive filesystems */ } } } @@ -535,11 +536,14 @@ if (!basename_hash) { + if (g_ascii_strcasecmp(ext, fd->extension) != 0) + { GList *new_list; g_string_truncate(fname, base_len); g_string_append(fname, ext); new_list = check_case_insensitive_ext(fname->str); group_list = g_list_concat(group_list, new_list); + } } else {