This is an automated email from the ASF dual-hosted git repository.

johnnyv pushed a commit to branch 2.1.X
in repository https://gitbox.apache.org/repos/asf/mina.git


The following commit(s) were added to refs/heads/2.1.X by this push:
     new 26ecc05  adds NULL check to SslHandler line 537-545 for valid 
WriteRequestQueue
26ecc05 is described below

commit 26ecc0548e4d0333177ad10e506461c02b19af79
Author: johnnyv <john...@apache.org>
AuthorDate: Wed Nov 6 20:58:57 2019 -0500

    adds NULL check to SslHandler line 537-545 for valid WriteRequestQueue
---
 .../java/org/apache/mina/filter/ssl/SslHandler.java     | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/mina-core/src/main/java/org/apache/mina/filter/ssl/SslHandler.java 
b/mina-core/src/main/java/org/apache/mina/filter/ssl/SslHandler.java
index 1870da6..71ace82 100644
--- a/mina-core/src/main/java/org/apache/mina/filter/ssl/SslHandler.java
+++ b/mina-core/src/main/java/org/apache/mina/filter/ssl/SslHandler.java
@@ -43,6 +43,7 @@ import org.apache.mina.core.session.IoEventType;
 import org.apache.mina.core.session.IoSession;
 import org.apache.mina.core.write.DefaultWriteRequest;
 import org.apache.mina.core.write.WriteRequest;
+import org.apache.mina.core.write.WriteRequestQueue;
 import org.apache.mina.filter.ssl.SslFilter.EncryptedWriteRequest;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -534,13 +535,15 @@ class SslHandler {
                 }
                 
                 // Empty the session queue
-                while (!session.getWriteRequestQueue().isEmpty(session)) {
-                    WriteRequest writeRequest = 
session.getWriteRequestQueue().poll( session );
-                    WriteFuture writeFuture = writeRequest.getFuture();
-                    writeFuture.setException(exception);
-                    writeFuture.notifyAll();
-                }
-                
+                WriteRequestQueue queue = session.getWriteRequestQueue();
+                WriteRequest request = null;
+               
+               while ((request = queue.poll(session)) != null) {
+                   WriteFuture writeFuture = request.getFuture();
+                   writeFuture.setException(exception);
+                   writeFuture.notifyAll();
+               }
+                    
                 // We *must* shutdown session
                 session.closeNow();
                 break;

Reply via email to