Module: Mesa Branch: master Commit: 91945f9e91e46aef79700015da032e16c355c96c URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=91945f9e91e46aef79700015da032e16c355c96c
Author: Eric Anholt <e...@anholt.net> Date: Tue Aug 9 00:02:44 2016 -0700 prog_hash_table: Convert compare funcs to match util/hash_table.h. I'm going to replace this hash table with util/hash_table.h, and the first step is to compare things the same way. Reviewed-by: Ian Romanick <ian.d.roman...@intel.com> Reviewed-by: Timothy Arceri <timothy.arc...@collabora.com> --- src/mesa/program/hash_table.h | 9 ++++----- src/mesa/program/prog_hash_table.c | 9 +++++++-- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/mesa/program/hash_table.h b/src/mesa/program/hash_table.h index d0a2abf..aba5282 100644 --- a/src/mesa/program/hash_table.h +++ b/src/mesa/program/hash_table.h @@ -47,7 +47,7 @@ extern "C" { struct hash_table; typedef unsigned (*hash_func_t)(const void *key); -typedef int (*hash_compare_func_t)(const void *key1, const void *key2); +typedef bool (*hash_compare_func_t)(const void *key1, const void *key2); /** * Hash table constructor @@ -151,12 +151,11 @@ extern unsigned hash_table_string_hash(const void *key); /** * Compare two strings used as keys * - * This is just a macro wrapper around \c strcmp. + * This is just a wrapper around \c strcmp. * * \sa hash_table_string_hash */ -#define hash_table_string_compare ((hash_compare_func_t) strcmp) - +bool hash_table_string_compare(const void *a, const void *b); /** * Compute hash value of a pointer @@ -178,7 +177,7 @@ hash_table_pointer_hash(const void *key); * * \sa hash_table_pointer_hash */ -int +bool hash_table_pointer_compare(const void *key1, const void *key2); void diff --git a/src/mesa/program/prog_hash_table.c b/src/mesa/program/prog_hash_table.c index 5592b6f..f8a7107 100644 --- a/src/mesa/program/prog_hash_table.c +++ b/src/mesa/program/prog_hash_table.c @@ -228,6 +228,11 @@ hash_table_string_hash(const void *key) return hash; } +bool hash_table_string_compare(const void *a, const void *b) +{ + return strcmp(a, b) == 0; +} + unsigned hash_table_pointer_hash(const void *key) @@ -236,8 +241,8 @@ hash_table_pointer_hash(const void *key) } -int +bool hash_table_pointer_compare(const void *key1, const void *key2) { - return key1 == key2 ? 0 : 1; + return key1 == key2; } _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit