about summary refs log tree commit diff
path: root/Src/hashtable.c
diff options
context:
space:
mode:
authorTanaka Akira <akr@users.sourceforge.net>1999-05-19 13:10:41 +0000
committerTanaka Akira <akr@users.sourceforge.net>1999-05-19 13:10:41 +0000
commit4fec788fa5f6e7c9723e02e3d0b57068ce9785aa (patch)
tree2b4fd7f79ee29b231c77c9bc0bc67b4eed913bef /Src/hashtable.c
parentea0ddb0fc6073be3d7d289e59b083f564dbd761f (diff)
downloadzsh-4fec788fa5f6e7c9723e02e3d0b57068ce9785aa.tar.gz
zsh-4fec788fa5f6e7c9723e02e3d0b57068ce9785aa.tar.xz
zsh-4fec788fa5f6e7c9723e02e3d0b57068ce9785aa.zip
Diffstat (limited to 'Src/hashtable.c')
-rw-r--r--Src/hashtable.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/Src/hashtable.c b/Src/hashtable.c
index 0a640349b..b534d8ac1 100644
--- a/Src/hashtable.c
+++ b/Src/hashtable.c
@@ -112,6 +112,7 @@ newhashtable(int size, char const *name, PrintTableStats printinfo)
     ht->hsize = size;
     ht->ct = 0;
     ht->scan = NULL;
+    ht->scantab = NULL;
     return ht;
 }
 
@@ -361,6 +362,10 @@ scanhashtable(HashTable ht, int sorted, int flags1, int flags2, ScanFunc scanfun
 {
     struct scanstatus st;
 
+    if (ht->scantab) {
+	ht->scantab(ht, scanfunc, scanflags);
+	return;
+    }
     if (sorted) {
 	int i, ct = ht->ct;
 	VARARR(HashNode, hnsorttab, ct);