summaryrefslogtreecommitdiff
path: root/mysys/hash.c
diff options
context:
space:
mode:
Diffstat (limited to 'mysys/hash.c')
-rw-r--r--mysys/hash.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/mysys/hash.c b/mysys/hash.c
index a0c5c6e45f0..770bd396d06 100644
--- a/mysys/hash.c
+++ b/mysys/hash.c
@@ -59,7 +59,12 @@ _hash_init(HASH *hash,CHARSET_INFO *charset,
hash->flags=flags;
hash->charset=charset;
if (flags & HASH_CASE_INSENSITIVE)
- hash->calc_hashnr=calc_hashnr_caseup;
+ {
+ if (charset->hash_caseup)
+ hash->calc_hashnr=charset->hash_caseup;
+ else
+ hash->calc_hashnr=calc_hashnr_caseup;
+ }
else
hash->calc_hashnr=calc_hashnr;
DBUG_RETURN(0);