diff options
author | Peter Stephenson <p.w.stephenson@ntlworld.com> | 2015-01-08 21:39:26 +0000 |
---|---|---|
committer | Peter Stephenson <p.w.stephenson@ntlworld.com> | 2015-01-09 21:33:39 +0000 |
commit | cfd91eac0732da8ece012ca4ab051d928a85c9dd (patch) | |
tree | 68ef32e118a060de0c7685c848e0267e64cf5137 /Src/builtin.c | |
parent | 6291d38848680b84252799d9e33110bca842efe8 (diff) | |
download | zsh-cfd91eac0732da8ece012ca4ab051d928a85c9dd.tar.gz zsh-cfd91eac0732da8ece012ca4ab051d928a85c9dd.tar.xz zsh-cfd91eac0732da8ece012ca4ab051d928a85c9dd.zip |
Rearrange context saving.
Variables are now associated with the module that declares them, being initialised and saved/restored there. However, as many variables are used for communication between modules, many of them are set in multiple places, so the assignment is ambiguous.
Diffstat (limited to 'Src/builtin.c')
-rw-r--r-- | Src/builtin.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/Src/builtin.c b/Src/builtin.c index d2108264f..8abe728db 100644 --- a/Src/builtin.c +++ b/Src/builtin.c @@ -6102,7 +6102,7 @@ bin_test(char *name, char **argv, UNUSED(Options ops), int func) } } - lexsave(); + zcontext_save(); testargs = argv; tok = NULLTOK; condlex = testlex; @@ -6112,16 +6112,16 @@ bin_test(char *name, char **argv, UNUSED(Options ops), int func) if (errflag) { errflag &= ~ERRFLAG_ERROR; - lexrestore(); + zcontext_restore(); return 1; } if (!prog || tok == LEXERR) { zwarnnam(name, tokstr ? "parse error" : "argument expected"); - lexrestore(); + zcontext_restore(); return 1; } - lexrestore(); + zcontext_restore(); if (*curtestarg) { zwarnnam(name, "too many arguments"); |