about summary refs log tree commit diff
path: root/Src/hashtable.c
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2000-04-30 14:48:49 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2000-04-30 14:48:49 +0000
commit563936ba27c92750e0f752ad9137366506352f09 (patch)
tree21945b324a8cac71f2a1fda1f575a24fe81be770 /Src/hashtable.c
parent5c327339f5b6973a9355d3edc564def697b7cbdd (diff)
downloadzsh-563936ba27c92750e0f752ad9137366506352f09.tar.gz
zsh-563936ba27c92750e0f752ad9137366506352f09.tar.xz
zsh-563936ba27c92750e0f752ad9137366506352f09.zip
11026: fix for unfunction of trap with localtraps bug
Diffstat (limited to 'Src/hashtable.c')
-rw-r--r--Src/hashtable.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/Src/hashtable.c b/Src/hashtable.c
index 3595c2721..19f23086b 100644
--- a/Src/hashtable.c
+++ b/Src/hashtable.c
@@ -787,8 +787,9 @@ static HashNode
 removeshfuncnode(HashTable ht, char *nam)
 {
     HashNode hn;
+    int signum;
 
-    if (!strncmp(nam, "TRAP", 4))
+    if (!strncmp(nam, "TRAP", 4) && (signum = getsignum(nam +4)) != -1)
 	hn = removetrap(getsignum(nam + 4));
     else
 	hn = removehashnode(shfunctab, nam);