From 6951a1e0b2ce74ad8f2b30243e721c3890dcdda8 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Mon, 15 Sep 2008 08:57:25 +0000 Subject: 25671: non existing variable in typeset -p should cause status 1 --- ChangeLog | 5 +++++ Src/builtin.c | 4 +++- Test/B02typeset.ztst | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index d70fb004e..c39b470ce 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2008-09-15 Peter Stephenson + + * 25671: Src/builtin.c, Test/B02typeset.ztst: non-existent + variable in typeset -p should cause status 1. + 2008-09-14 Clint Adams * 25667: Src/Zle/complete.c: free mstr before returning from diff --git a/Src/builtin.c b/Src/builtin.c index 8246453f4..4772e0a8c 100644 --- a/Src/builtin.c +++ b/Src/builtin.c @@ -2479,8 +2479,10 @@ bin_typeset(char *name, char **argv, Options ops, int func) if (OPT_ISSET(ops,'p')) { if (hn) printparamnode(hn, printflags); - else + else { zwarnnam(name, "no such variable: %s", asg->name); + returnval = 1; + } continue; } if (!typeset_single(name, asg->name, (Param)hn, diff --git a/Test/B02typeset.ztst b/Test/B02typeset.ztst index abb549ed6..48a45c15d 100644 --- a/Test/B02typeset.ztst +++ b/Test/B02typeset.ztst @@ -449,7 +449,7 @@ array=(foo bar) fn() { typeset -p array nonexistent; } fn -0:declare -p shouldn't create scoped values +1:declare -p shouldn't create scoped values >typeset -a array >array=(foo bar) ?fn:typeset: no such variable: nonexistent -- cgit 1.4.1