Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=46223
authormarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Mon, 29 Dec 2008 00:11:28 +0000 (00:11 +0000)
committermarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Mon, 29 Dec 2008 00:11:28 +0000 (00:11 +0000)
Throw NoSuchElementException if next() is called on the Iterator when hasNext()==false

git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@729813 13f79535-47bb-0310-9956-ffa450edef68

modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java

index 25e0bec..4d0a47d 100644 (file)
@@ -19,6 +19,7 @@ package org.apache.tomcat.jdbc.pool;
 import java.util.Collection;
 import java.util.Iterator;
 import java.util.LinkedList;
+import java.util.NoSuchElementException;
 import java.util.concurrent.BlockingQueue;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.ExecutionException;
@@ -428,6 +429,9 @@ public class FairBlockingQueue<E> implements BlockingQueue<E> {
         }
 
         public E next() {
+            if (!hasNext()) {
+                throw new NoSuchElementException();
+            }
             element = elements[index++];
             return element;
         }