From 361e9b464d51a935364eb00d6a2a9a3a5e57d868 Mon Sep 17 00:00:00 2001 From: tjg Date: Tue, 2 Oct 2001 09:20:03 +0000 Subject: Bug: it's no longer possible to use parentheses to sneak a word that needs quoting past the "quoting detector", so `fn x { echo $(x.y) }' now works both in the current rc and its descendants. --- glom.c | 3 +-- walk.c | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/glom.c b/glom.c index ea6b432..c44f0d5 100644 --- a/glom.c +++ b/glom.c @@ -384,7 +384,7 @@ extern List *glom(Node *n) { words = n->u[0].p; tail = NULL; while (words != NULL && (words->type == nArgs || words->type == nLappend)) { - if (words->u[1].p != NULL && words->u[1].p->type != nWord && words->u[1].p->type != nQword) + if (words->u[1].p != NULL && words->u[1].p->type != nWord) break; head = glom(words->u[1].p); if (head != NULL) { @@ -405,7 +405,6 @@ extern List *glom(Node *n) { qredir(n); return NULL; case nWord: - case nQword: return word(n->u[0].s, n->u[1].s); case nNmpipe: return mkcmdarg(n); diff --git a/walk.c b/walk.c index aa838c5..177e56e 100644 --- a/walk.c +++ b/walk.c @@ -33,7 +33,7 @@ top: sigchk(); switch (n->type) { case nArgs: case nBackq: case nConcat: case nCount: case nFlat: case nLappend: case nRedir: case nVar: - case nVarsub: case nWord: case nQword: + case nVarsub: case nWord: exec(glob(glom(n)), parent); /* simple command */ break; case nBody: -- cgit v1.2.3