Enlightenment CVS committal Author : englebass Project : e17 Module : libs/ecore
Dir : e17/libs/ecore/src/lib/ecore Modified Files: ecore_hash.c Log Message: It's not hash->size which is to be compared to PRIME_{MIN,MAX}, but the result from the ecore_prime_table lookup. =================================================================== RCS file: /cvs/e/e17/libs/ecore/src/lib/ecore/ecore_hash.c,v retrieving revision 1.35 retrieving revision 1.36 diff -u -3 -r1.35 -r1.36 --- ecore_hash.c 25 Mar 2007 16:44:11 -0000 1.35 +++ ecore_hash.c 3 Jun 2007 08:10:33 -0000 1.36 @@ -4,17 +4,17 @@ #define PRIME_TABLE_MAX 21 #define PRIME_MIN 17 -#define PRIME_MAX 1677721 +#define PRIME_MAX 16777213 #define ECORE_HASH_CHAIN_MAX 3 #define ECORE_COMPUTE_HASH(hash, key) hash->hash_func(key) % \ ecore_prime_table[hash->size]; -#define ECORE_HASH_INCREASE(hash) ((hash && hash->size < PRIME_MAX) ? \ +#define ECORE_HASH_INCREASE(hash) ((hash && ecore_prime_table[hash->size] < PRIME_MAX) ? \ (hash->nodes / ecore_prime_table[hash->size]) > \ ECORE_HASH_CHAIN_MAX : FALSE) -#define ECORE_HASH_REDUCE(hash) ((hash && hash->size > PRIME_MIN) ? \ +#define ECORE_HASH_REDUCE(hash) ((hash && ecore_prime_table[hash->size] > PRIME_MIN) ? \ (double)hash->nodes / (double)ecore_prime_table[hash->size-1] \ < ((double)ECORE_HASH_CHAIN_MAX * 0.375) : FALSE) ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs