From 691a7e4b3d106bbc899bacbce20d1be9865b6598 Mon Sep 17 00:00:00 2001
From: Peter Stephenson
Date: Thu, 25 Sep 2014 19:12:34 +0100
Subject: users/19143: fix depth glob search with trailing slashes
---
ChangeLog | 5 +++++
Src/glob.c | 3 +++
2 files changed, 8 insertions(+)
diff --git a/ChangeLog b/ChangeLog
index f63bb8a12..a3e72e3e8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2014-09-25 Peter Stephenson
+
+ * users/19143: Src/glob.c: **/*(odonT) didn't work because
+ the trailing slash wasn't properly ignored.
+
2014-09-25 Peter Stephenson
* unposted: NEWS: tweak last change.
diff --git a/Src/glob.c b/Src/glob.c
index c24bfec93..ca7bc4410 100644
--- a/Src/glob.c
+++ b/Src/glob.c
@@ -900,6 +900,9 @@ gmatchcmp(Gmatch a, Gmatch b)
/* Count slashes. Trailing slashes don't count. */
while (*aptr && *aptr == *bptr)
aptr++, bptr++;
+ /* Like I just said... */
+ if ((!*aptr || !*bptr) && aptr > a->name && aptr[-1] == '/')
+ aptr--, bptr--;
if (*aptr)
for (; aptr[1]; aptr++)
if (*aptr == '/') {
--
cgit 1.4.1