diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2009-02-11 20:42:15 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2009-02-11 20:42:15 +0000 |
commit | c7d8b0dfb8ae9670e2bc11ecf563200069a3a12f (patch) | |
tree | 822403086b3d6d77bb14846b6e286d59389da12c /Src/params.c | |
parent | 0d02cf343eda943c32f7edfd24f28dbbd7004e32 (diff) | |
download | zsh-c7d8b0dfb8ae9670e2bc11ecf563200069a3a12f.tar.gz zsh-c7d8b0dfb8ae9670e2bc11ecf563200069a3a12f.tar.xz zsh-c7d8b0dfb8ae9670e2bc11ecf563200069a3a12f.zip |
26546, 26556: sticky emulation for functions defined in emulate ... -c ...
environments, plus documentation
Diffstat (limited to 'Src/params.c')
-rw-r--r-- | Src/params.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/Src/params.c b/Src/params.c index 1e902e871..6a7ab0fa6 100644 --- a/Src/params.c +++ b/Src/params.c @@ -642,7 +642,7 @@ createparamtable(void) /* Add the special parameters to the hash table */ for (ip = special_params; ip->node.nam; ip++) paramtab->addnode(paramtab, ztrdup(ip->node.nam), ip); - if (emulation != EMULATE_SH && emulation != EMULATE_KSH) + if (!EMULATION(EMULATE_SH|EMULATE_KSH)) while ((++ip)->node.nam) paramtab->addnode(paramtab, ztrdup(ip->node.nam), ip); @@ -720,7 +720,7 @@ createparamtable(void) #endif opts[ALLEXPORT] = oae; - if (emulation == EMULATE_ZSH) + if (EMULATION(EMULATE_ZSH)) { /* * For native emulation we always set the variable home @@ -1881,7 +1881,7 @@ getstrvalue(Value v) switch(PM_TYPE(v->pm->node.flags)) { case PM_HASHED: /* (!v->isarr) should be impossible unless emulating ksh */ - if (!v->isarr && emulation == EMULATE_KSH) { + if (!v->isarr && EMULATION(EMULATE_KSH)) { s = dupstring("[0]"); if (getindex(&s, v, 0) == 0) s = getstrvalue(v); @@ -2164,7 +2164,7 @@ export_param(Param pm) if (PM_TYPE(pm->node.flags) & (PM_ARRAY|PM_HASHED)) { #if 0 /* Requires changes elsewhere in params.c and builtin.c */ - if (emulation == EMULATE_KSH /* isset(KSHARRAYS) */) { + if (EMULATION(EMULATE_KSH) /* isset(KSHARRAYS) */) { struct value v; v.isarr = 1; v.flags = 0; |