diff --git a/src/list.c b/src/list.c index 8e9caf5c..14050cfb 100644 --- a/src/list.c +++ b/src/list.c @@ -120,8 +120,16 @@ enforce_one_top_level (char **pfile_name) char *file_name = *pfile_name; char *p; - for (p = file_name; *p && (ISSLASH (*p) || *p == '.'); p++) - ; + for (p = file_name; ; p++) + { + bool dot = p[0] == '.'; + if (!ISSLASH (p[dot])) + { + p += dot & !p[dot]; + break; + } + p += dot; + } if (*p) {