34634: avoid infinite recursion on (/)# extendedglob

This commit is contained in:
Barton E. Schaefer 2015-02-27 10:10:19 -08:00
parent 49776e807f
commit 628d2f4f8a
2 changed files with 6 additions and 1 deletions

View File

@ -1,3 +1,7 @@
2015-02-27 Barton E. Schaefer <schaefer@zsh.org>
* 34634: Src/glob.c: avoid infinite recursion on (/)# extendedglob
2015-02-27 Daniel Shahaf <d.s@daniel.shahaf.name>
* 34588: Completion/Unix/Command/_user_admin: Complete

View File

@ -708,7 +708,8 @@ parsecomplist(char *instr)
}
l1 = (Complist) zhalloc(sizeof *l1);
l1->pat = p1;
l1->closure = 1 + pdflag;
/* special case (/)# to avoid infinite recursion */
l1->closure = (*((char *)p1 + p1->startoff)) ? 1 + pdflag : 0;
l1->follow = 0;
l1->next = parsecomplist(instr);
return (l1->pat) ? l1 : NULL;