From e7dbda821d362e5b427cdb0592150d9d9f9d042e Mon Sep 17 00:00:00 2001 From: Ray Greenwell Date: Tue, 28 Apr 2009 01:14:01 +0000 Subject: [PATCH] Removed pointless 8-char optimization. Now it is more useful for this to hash identically as in Java. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5753 542714f4-19e9-0310-aa3c-eee0fc999fb1 --- src/as/com/threerings/util/StringUtil.as | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/as/com/threerings/util/StringUtil.as b/src/as/com/threerings/util/StringUtil.as index 991cf5c93..ff7f49d53 100644 --- a/src/as/com/threerings/util/StringUtil.as +++ b/src/as/com/threerings/util/StringUtil.as @@ -44,10 +44,9 @@ public class StringUtil { var code :int = 0; if (str != null) { - // sample at most 8 chars - var lastChar :int = Math.min(8, str.length); - for (var ii :int = 0; ii < lastChar; ii++) { - code = code * 31 + str.charCodeAt(ii); + // hash identically to Java's String.hashCode(), for various reasons + for (var ii :int = 0; ii < str.length; ii++) { + code = 31 * code + str.charCodeAt(ii); } } return code;