summary refs log tree commit diff
path: root/locale/weight.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1997-02-11 04:45:23 +0000
committerUlrich Drepper <drepper@redhat.com>1997-02-11 04:45:23 +0000
commit00de59a632eecc23a5eb1ddbadb8a770cd481f43 (patch)
tree294dd1ff7c4394efd3fa17639e9d4e269c68d2c1 /locale/weight.h
parent7cc27f440c2f709fda63af7ecb3747deeeb799f0 (diff)
downloadglibc-00de59a632eecc23a5eb1ddbadb8a770cd481f43.tar.gz
glibc-00de59a632eecc23a5eb1ddbadb8a770cd481f43.tar.xz
glibc-00de59a632eecc23a5eb1ddbadb8a770cd481f43.zip
update from main archive 970210 cvs/libc-970212 cvs/libc-970211
1997-02-11 05:27  Ulrich Drepper  <drepper@cygnus.com>

	* locale/weight.h (collate_rules): It's an u_int32_t array.
	(get_weight): Compute initial SLOT value correctly.

1997-02-10 17:45  Ulrich Drepper  <drepper@cygnus.com>

	* string/argz-ctsep.c: Initialize *LEN when successful.

	* libio/vsnprintf.c: If MAXLEN is 0 return 0.
	* stdio/vsnprintf.c: Likewise.
	Reported by Philip Blundell <pjb27@cam.ac.uk>.

1997-02-06 13:49  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* rellns-sh: No need to check for existance of first parameter.
Diffstat (limited to 'locale/weight.h')
-rw-r--r--locale/weight.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/locale/weight.h b/locale/weight.h
index 0d6ef51722..424e493209 100644
--- a/locale/weight.h
+++ b/locale/weight.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Written by Ulrich Drepper, <drepper@gnu.ai.mit.edu>.
 
@@ -52,7 +52,7 @@ typedef struct weight_t
 #define collate_undefined \
   (_NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_UNDEFINED))
 #define collate_rules \
-  (_NL_CURRENT (LC_COLLATE, _NL_COLLATE_RULES))
+  ((u_int32_t *) _NL_CURRENT (LC_COLLATE, _NL_COLLATE_RULES))
 
 
 static __inline int get_weight (const STRING_TYPE **str, weight_t *result);
@@ -69,7 +69,7 @@ get_weight (const STRING_TYPE **str, weight_t *result)
       const size_t level_size = collate_hash_size * (collate_nrules + 1);
       size_t level;
 
-      slot = (ch * (collate_nrules + 1)) % collate_hash_size;
+      slot = (ch % collate_hash_size) * (collate_nrules + 1);
 
       level = 0;
       while (__collate_table[slot] != (u_int32_t) ch)