summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortjg <tjg>2001-10-02 09:20:03 +0000
committerToby Goodwin <toby@paccrat.org>2015-05-16 21:23:19 +0100
commit361e9b464d51a935364eb00d6a2a9a3a5e57d868 (patch)
treed88cd1104be20e2abc189ebd4a8d03e3c6cf11af
parent8ce5bc05bcf9b263a65eb6e8d6bae0e610a88b16 (diff)
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.
-rw-r--r--glom.c3
-rw-r--r--walk.c2
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: