From a3a6c3129f4bdf3f54122355ff8d6843fe40a7ac Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Mon, 23 Sep 2013 23:03:34 +0000 Subject: [PATCH] Make locale archive hash function architecture-independent. --- ChangeLog | 5 +++++ locale/hashval.h | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index a83e5f6..2963c38 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-09-23 Joseph Myers + + * locale/hashval.h (compute_hashval): Interpret bytes of key as + unsigned char. + 2013-09-23 Maciej W. Rozycki * manual/threads.texi (POSIX Threads): Fix a typo. diff --git a/locale/hashval.h b/locale/hashval.h index 737162f..88e7839 100644 --- a/locale/hashval.h +++ b/locale/hashval.h @@ -37,7 +37,7 @@ compute_hashval (const void *key, size_t keylen) while (cnt < keylen) { hval = (hval << 9) | (hval >> (sizeof hval * CHAR_BIT - 9)); - hval += (hashval_t) *(((char *) key) + cnt++); + hval += (hashval_t) ((const unsigned char *) key)[cnt++]; } return hval != 0 ? hval : ~((hashval_t) 0); } -- 2.7.4