From dabb2c4bc819a3ff1e99574ceee919255abe754a Mon Sep 17 00:00:00 2001 From: =?utf8?q?Wilfried=20G=C3=B6esgens?= Date: Mon, 8 Sep 2008 21:02:49 +0000 Subject: [PATCH] * add wrapper to destruct nested hashes --- libcitadel/debian/files | 6 +++--- libcitadel/lib/hash.c | 9 +++++++++ libcitadel/lib/libcitadel.h | 1 + 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/libcitadel/debian/files b/libcitadel/debian/files index d2ac0561c..73fc3064e 100644 --- a/libcitadel/debian/files +++ b/libcitadel/debian/files @@ -1,3 +1,3 @@ -libcitadel1_7.38-8_i386.deb libs optional -libcitadel1-dbg_7.38-8_i386.deb libdevel optional -libcitadel-dev_7.38-8_i386.deb libdevel optional +libcitadel1_7.38-8_amd64.deb libs optional +libcitadel1-dbg_7.38-8_amd64.deb libdevel optional +libcitadel-dev_7.38-8_amd64.deb libdevel optional diff --git a/libcitadel/lib/hash.c b/libcitadel/lib/hash.c index 9ab2aa6e3..d6c5b4745 100644 --- a/libcitadel/lib/hash.c +++ b/libcitadel/lib/hash.c @@ -195,6 +195,15 @@ static void DeleteHashPayload (Payload *Data) free(Data->Data); } +/** + * \brief Destructor for nested hashes + */ +void HDeleteHash(void *vHash) +{ + HashList *FreeMe = (HashList*)vHash; + DeleteHash(&FreeMe); +} + /** * \brief destroy a hashlist and all of its members * Crashing? do 'print *FreeMe->LookupTable[i]' diff --git a/libcitadel/lib/libcitadel.h b/libcitadel/lib/libcitadel.h index 1fb7c4810..eef88e808 100644 --- a/libcitadel/lib/libcitadel.h +++ b/libcitadel/lib/libcitadel.h @@ -358,6 +358,7 @@ typedef void (*PrintHashDataFunc) (const char *Key, void *Item, int Odd); HashList *NewHash(int Uniq, HashFunc F); void DeleteHash(HashList **Hash); +void HDeleteHash(void *vHash); int GetHash(HashList *Hash, const char *HKey, long HKLen, void **Data); void Put(HashList *Hash, const char *HKey, long HKLen, void *Data, DeleteHashDataFunc DeleteIt); int GetKey(HashList *Hash, char *HKey, long HKLen, void **Data); -- 2.30.2