about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Src/glob.c1
-rw-r--r--Test/D02glob.ztst4
3 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 06a4be866..e0585735f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2005-06-21  Oliver Kiddle  <opk@zsh.org>
+
+	* 21317: Src/glob.c, Test/D02glob.ztst: fix bug where recursive
+	glob within e qualifier would hang the shell
+
 2005-06-20  Bart Schaefer  <schaefer@zsh.org>
 
 	* unposted: Functions/Misc/zargs: support -I and -L as synonyms
diff --git a/Src/glob.c b/Src/glob.c
index 4af70053e..86cb9b626 100644
--- a/Src/glob.c
+++ b/Src/glob.c
@@ -180,7 +180,6 @@ static struct globdata curglobdata;
     memcpy(&(N), &curglobdata, sizeof(struct globdata)); \
     (N).gd_pathpos = pathpos; \
     (N).gd_pathbuf = pathbuf; \
-    (N).gd_pathbufsz = 0; \
     (N).gd_glob_pre = glob_pre; \
     (N).gd_glob_suf = glob_suf; \
     pathbuf = NULL; \
diff --git a/Test/D02glob.ztst b/Test/D02glob.ztst
index d21aaf8c4..409a73e30 100644
--- a/Test/D02glob.ztst
+++ b/Test/D02glob.ztst
@@ -280,6 +280,10 @@
 0:Globbing used recursively (inside e glob qualifier)
 >a a b b c c
 
+ print glob.tmp/*/*(e:'reply=( glob.tmp/**/*([1]) )'::t)
+0:Recursive globbing used recursively (inside e glob qualifier)
+>a a a a a a a
+
  print glob.tmp/**/(:h) 
 0:Head modifier
 >. glob.tmp glob.tmp glob.tmp glob.tmp glob.tmp/dir3