From 6d24a8dc9cf6653ec01ebc85c74939a3c9d7031c Mon Sep 17 00:00:00 2001 From: Wilfried Goesgens Date: Sun, 11 Oct 2015 23:24:37 +0200 Subject: [PATCH] Add propper debugging for lflathashs, crash if debug and invalid combination of *FlatHash and LKEY / IKEY --- libcitadel/lib/hash.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/libcitadel/lib/hash.c b/libcitadel/lib/hash.c index 0eedcab41..ab7eec189 100644 --- a/libcitadel/lib/hash.c +++ b/libcitadel/lib/hash.c @@ -230,7 +230,12 @@ int dbg_PrintHash(HashList *Hash, PrintHashContent First, PrintHashContent Secon } #ifdef DEBUG - printf (" ---- Hashkey[%ld][%ld]: '%s' Value: '%s' ; %s\n", i, key, foo, bar, bla); + if ((Hash->Algorithm == lFlathash) || (Hash->Algorithm == Flathash)) { + printf (" ---- Hashkey[%ld][%ld]: %ld '%s' Value: '%s' ; %s\n", i, key, *(long*) foo, foo, bar, bla); + } + else { + printf (" ---- Hashkey[%ld][%ld]: '%s' Value: '%s' ; %s\n", i, key, foo, bar, bla); + } #endif } #ifdef DEBUG @@ -618,7 +623,13 @@ static long FindInHash(HashList *Hash, long HashBinKey) long Flathash(const char *str, long len) { if (len != sizeof (int)) + { +#ifdef DEBUG + int *crash = NULL; + *crash = 1; +#endif return 0; + } else return *(int*)str; } @@ -632,7 +643,13 @@ long Flathash(const char *str, long len) long lFlathash(const char *str, long len) { if (len != sizeof (long)) + { +#ifdef DEBUG + int *crash = NULL; + *crash = 1; +#endif return 0; + } else return *(long*)str; } -- 2.30.2