diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2000-06-12 09:27:09 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2000-06-12 09:27:09 +0000 |
commit | 055d961f84fcfb430aceb40bdb7932d962b143e9 (patch) | |
tree | 75ccaf7156e47c96ffe471f7c94054f28bf7a67d /Src | |
parent | 21f6b9d14c100f0887d03422a21c57a0e327fde1 (diff) | |
download | zsh-055d961f84fcfb430aceb40bdb7932d962b143e9.tar.gz zsh-055d961f84fcfb430aceb40bdb7932d962b143e9.tar.xz zsh-055d961f84fcfb430aceb40bdb7932d962b143e9.zip |
11867: restrict typeset -H application
Diffstat (limited to 'Src')
-rw-r--r-- | Src/builtin.c | 2 | ||||
-rw-r--r-- | Src/params.c | 3 | ||||
-rw-r--r-- | Src/zsh.h | 1 |
3 files changed, 4 insertions, 2 deletions
diff --git a/Src/builtin.c b/Src/builtin.c index 950595c72..8ea88862f 100644 --- a/Src/builtin.c +++ b/Src/builtin.c @@ -1598,7 +1598,7 @@ typeset_single(char *cname, char *pname, Param pm, int func, if (usepm) { on &= ~PM_LOCAL; if (!on && !roff && !value) { - paramtab->printnode((HashNode)pm, 0); + paramtab->printnode((HashNode)pm, PRINT_INCLUDEVALUE); return pm; } if ((pm->flags & PM_RESTRICTED) && isset(RESTRICTED)) { diff --git a/Src/params.c b/Src/params.c index f57173495..2768c273d 100644 --- a/Src/params.c +++ b/Src/params.c @@ -3181,7 +3181,8 @@ printparamnode(HashNode hn, int printflags) printf("exported "); } - if ((printflags & PRINT_NAMEONLY) || (p->flags & PM_HIDEVAL)) { + if ((printflags & PRINT_NAMEONLY) || + ((p->flags & PM_HIDEVAL) && !(printflags & PRINT_INCLUDEVALUE))) { zputs(p->nam, stdout); putchar('\n'); return; diff --git a/Src/zsh.h b/Src/zsh.h index 49f434691..d4f521f48 100644 --- a/Src/zsh.h +++ b/Src/zsh.h @@ -1213,6 +1213,7 @@ struct nameddir { #define PRINT_TYPE (1<<1) #define PRINT_LIST (1<<2) #define PRINT_KV_PAIR (1<<3) +#define PRINT_INCLUDEVALUE (1<<4) /* flags for printing for the whence builtin */ #define PRINT_WHENCE_CSH (1<<4) |