Looks good to me! On Mon, Dec 5, 2016 at 12:12 PM, Paul Sandoz <paul.san...@oracle.com> wrote:
> Hi, > > Please review this small fix to the Linked/HashMap iterators. The remove > method can use the cached hash code. > > Paul. > > diff -r 5c9389804cbc src/java.base/share/classes/java/util/HashMap.java > --- a/src/java.base/share/classes/java/util/HashMap.java Mon Dec > 05 12:53:53 2016 +0530 > +++ b/src/java.base/share/classes/java/util/HashMap.java Mon Dec > 05 12:10:46 2016 -0800 > @@ -1502,8 +1502,7 @@ > if (modCount != expectedModCount) > throw new ConcurrentModificationException(); > current = null; > - K key = p.key; > - removeNode(hash(key), key, null, false, false); > + removeNode(p.hash, p.key, null, false, false); > expectedModCount = modCount; > } > } > diff -r 5c9389804cbc src/java.base/share/classes/ > java/util/LinkedHashMap.java > --- a/src/java.base/share/classes/java/util/LinkedHashMap.java Mon Dec > 05 12:53:53 2016 +0530 > +++ b/src/java.base/share/classes/java/util/LinkedHashMap.java Mon Dec > 05 12:10:46 2016 -0800 > @@ -731,8 +731,7 @@ > if (modCount != expectedModCount) > throw new ConcurrentModificationException(); > current = null; > - K key = p.key; > - removeNode(hash(key), key, null, false, false); > + removeNode(p.hash, p.key, null, false, false); > expectedModCount = modCount; > } > } >