summaryrefslogtreecommitdiff
path: root/Src/params.c
diff options
context:
space:
mode:
authorBart Schaefer <barts@users.sourceforge.net>2000-11-25 23:50:01 +0000
committerBart Schaefer <barts@users.sourceforge.net>2000-11-25 23:50:01 +0000
commitad5f9584c11561eb8d58b155aac018a771548e75 (patch)
tree21c430799fb4e67bb277d3ec9c91c12053616a29 /Src/params.c
parent3d680025994751fc87c9824d1299418585ef1a50 (diff)
downloadzsh-ad5f9584c11561eb8d58b155aac018a771548e75.tar.gz
zsh-ad5f9584c11561eb8d58b155aac018a771548e75.zip
ALL_EXPORT tweaks.
Diffstat (limited to 'Src/params.c')
-rw-r--r--Src/params.c14
1 files changed, 13 insertions, 1 deletions
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,