summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/tree.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/tree.c b/src/tree.c
index d71cd37d4..bf1cdfa0f 100644
--- a/src/tree.c
+++ b/src/tree.c
@@ -50,10 +50,10 @@ static int cache_name_compare(const char *name1, int len1, int isdir1,
if (cmp)
return cmp;
if (len1 < len2)
- return ((isdir1 == isdir2) ? -1 :
+ return ((!isdir1 && !isdir2) ? -1 :
(isdir1 ? '/' - name2[len1] : name2[len1] - '/'));
if (len1 > len2)
- return ((isdir1 == isdir2) ? 1 :
+ return ((!isdir1 && !isdir2) ? 1 :
(isdir2 ? name1[len2] - '/' : '/' - name1[len2]));
return 0;
}