about summary refs log tree commit diff
path: root/Src
diff options
context:
space:
mode:
authorTanaka Akira <akr@users.sourceforge.net>1999-09-02 09:42:05 +0000
committerTanaka Akira <akr@users.sourceforge.net>1999-09-02 09:42:05 +0000
commit586aaeb0861cce12a22af5bb3288c4e84b1c0bb4 (patch)
treed2ba4d41714cee418ceb22a50da63bbca6087cf7 /Src
parentb13200b2a367d513c445dcc35e7d35b71990bcc1 (diff)
downloadzsh-586aaeb0861cce12a22af5bb3288c4e84b1c0bb4.tar.gz
zsh-586aaeb0861cce12a22af5bb3288c4e84b1c0bb4.tar.xz
zsh-586aaeb0861cce12a22af5bb3288c4e84b1c0bb4.zip
zsh-workers/7628
Diffstat (limited to 'Src')
-rw-r--r--Src/Modules/parameter.c3
-rw-r--r--Src/params.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/Src/Modules/parameter.c b/Src/Modules/parameter.c
index 08c95c610..2d932ce06 100644
--- a/Src/Modules/parameter.c
+++ b/Src/Modules/parameter.c
@@ -83,6 +83,9 @@ paramtypestr(Param pm)
     int f = pm->flags;
 
     if (!(f & PM_UNSET)) {
+	if (pm->flags & PM_AUTOLOAD)
+	    return dupstring("undefined");
+
 	switch (PM_TYPE(f)) {
 	case PM_SCALAR:  val = "scalar"; break;
 	case PM_ARRAY:   val = "array"; break;
diff --git a/Src/params.c b/Src/params.c
index dfa1d1a7f..75c5d915d 100644
--- a/Src/params.c
+++ b/Src/params.c
@@ -292,7 +292,7 @@ getparamnode(HashTable ht, char *nam)
 	if (!load_module(mn))
 	    return NULL;
 	hn = gethashnode2(ht, nam);
-	if (((Param) hn) == pm) {
+	if (((Param) hn) == pm && (pm->flags & PM_AUTOLOAD)) {
 	    pm->flags &= ~PM_AUTOLOAD;
 	    zwarnnam(nam, "autoload failed", NULL, 0);
 	}