From c28ced72533780443da9be8a31dbd2557393afdc Mon Sep 17 00:00:00 2001 From: dschreiber Date: Wed, 20 Jun 2012 06:43:36 -0700 Subject: [PATCH] Merging FS-3432 switch_core_hash.c patch in from Tamas --- src/switch_core_hash.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/switch_core_hash.c b/src/switch_core_hash.c index 4ac3d2620e..c31a31fa9c 100644 --- a/src/switch_core_hash.c +++ b/src/switch_core_hash.c @@ -157,7 +157,7 @@ SWITCH_DECLARE(switch_status_t) switch_core_hash_delete_multi(switch_hash_t *has switch_event_create_subclass(&event, SWITCH_EVENT_CLONE, NULL); switch_assert(event); - /* iterate through the hash, call callback, if callback returns true, put the key on the list (event) + /* iterate through the hash, call callback, if callback returns NULL or true, put the key on the list (event) When done, iterate through the list deleting hash entries */ @@ -165,7 +165,7 @@ SWITCH_DECLARE(switch_status_t) switch_core_hash_delete_multi(switch_hash_t *has const void *key; void *val; switch_hash_this(hi, &key, NULL, &val); - if (callback(key, val, pData)) { + if (!callback || callback(key, val, pData)) { switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "delete", (const char *) key); } }