diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | Completion/Core/compinit | 1 | ||||
-rw-r--r-- | Src/params.c | 14 |
3 files changed, 20 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 00294ed93..f7522a984 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2000-11-25 Bart Schaefer <schaefer@zsh.org> + + * 13192: Completion/Core/compinit, Src/params.c: Turn off + ALL_EXPORT during completion; don't export arrays or hashes, even + with ALL_EXPORT. + 2000-11-22 Tanaka Akira <akr@zsh.org> * 13181: Completion/Debian/_apt: add an action for _alternative. diff --git a/Completion/Core/compinit b/Completion/Core/compinit index d5b7c20af..86e4204f0 100644 --- a/Completion/Core/compinit +++ b/Completion/Core/compinit @@ -134,6 +134,7 @@ _comp_options=( NO_shglob NO_ksharrays NO_cshnullglob + NO_allexport ) # These can hold names of functions that are to be called before/after all diff --git a/Src/params.c b/Src/params.c index 93319dbfe..1c41d2fc2 100644 --- a/Src/params.c +++ b/Src/params.c @@ -1484,7 +1484,19 @@ export_param(Param pm) { char buf[(sizeof(zlong) * 8) + 4], *val; - if (PM_TYPE(pm->flags) == PM_INTEGER) + if (PM_TYPE(pm->flags) & (PM_ARRAY|PM_HASHED)) { +#if 0 /* Requires changes elsewhere in params.c and builtin.c */ + if (emulation == EMULATE_KSH /* isset(KSHARRAYS) */) { + struct value v; + v.isarr = 1; + v.inv = 0; + v.start = 0; + v.end = -1; + val = getstrvalue(&v); + } else +#endif + return; + } else if (PM_TYPE(pm->flags) == PM_INTEGER) convbase(val = buf, pm->gets.ifn(pm), pm->ct); else if (pm->flags & (PM_EFLOAT|PM_FFLOAT)) val = convfloat(pm->gets.ffn(pm), pm->ct, |