OSDN Git Service

2004-05-05 Mark Wielaard <mark@klomp.org>
authormkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 5 May 2004 08:28:13 +0000 (08:28 +0000)
committermkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 5 May 2004 08:28:13 +0000 (08:28 +0000)
Reported by f.haeglsperger@gmx.de [classpath patch #2485]
* java/util/HashMap.java (rehash): Add entry at start of bucket.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@81512 138bc75d-0d04-0410-961f-82ee72b054a4

libjava/ChangeLog
libjava/java/util/HashMap.java

index 45febe3..cdb04d0 100644 (file)
@@ -1,3 +1,8 @@
+2004-05-05  Mark Wielaard  <mark@klomp.org>
+
+       Reported by f.haeglsperger@gmx.de [classpath patch #2485]
+       * java/util/HashMap.java (rehash): Add entry at start of bucket.
+
 2004-05-05  Tom Tromey  <tromey@redhat.com>
 
        * java/io/BufferedReader.java (skip): Removed unused
index dc1b112..fe4c8b0 100644 (file)
@@ -743,18 +743,9 @@ public class HashMap extends AbstractMap
           {
             int idx = hash(e.key);
             HashEntry dest = buckets[idx];
-
-            if (dest != null)
-              {
-                while (dest.next != null)
-                  dest = dest.next;
-                dest.next = e;
-              }
-            else
-              buckets[idx] = e;
-
             HashEntry next = e.next;
-            e.next = null;
+            e.next = buckets[idx];
+            buckets[idx] = e;
             e = next;
           }
       }