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

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


The following commit(s) were added to refs/heads/bugfix/DIRMINA1132 by this 
push:
     new 5fe18b2  ensures that qreceive() loops when possible
5fe18b2 is described below

commit 5fe18b2f2ebcc1529aea7b53380f95994b679358
Author: Jonathan Valliere <john...@apache.org>
AuthorDate: Wed Aug 4 14:26:07 2021 -0400

    ensures that qreceive() loops when possible
---
 .../src/main/java/org/apache/mina/filter/ssl2/SSL2HandlerG0.java  | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git 
a/mina-core/src/main/java/org/apache/mina/filter/ssl2/SSL2HandlerG0.java 
b/mina-core/src/main/java/org/apache/mina/filter/ssl2/SSL2HandlerG0.java
index f78c9ef..8b203c8 100644
--- a/mina-core/src/main/java/org/apache/mina/filter/ssl2/SSL2HandlerG0.java
+++ b/mina-core/src/main/java/org/apache/mina/filter/ssl2/SSL2HandlerG0.java
@@ -45,6 +45,9 @@ public class SSL2HandlerG0 extends SSL2Handler {
         */
        protected boolean mHandshakeStarted = false;
 
+       /**
+        * Holds the decoder thread reference
+        */
        protected Thread mDecodeThread = null;
 
        /**
@@ -132,8 +135,6 @@ public class SSL2HandlerG0 extends SSL2Handler {
                                        result.bytesConsumed(), 
result.bytesProduced(), result.getStatus(), result.getHandshakeStatus());
                }
 
-               final boolean success = result.bytesConsumed() != 0;
-
                if (result.bytesProduced() == 0) {
                        dest.free();
                } else {
@@ -165,7 +166,7 @@ public class SSL2HandlerG0 extends SSL2Handler {
                        case NEED_UNWRAP:
                        case NEED_UNWRAP_AGAIN:
                        case NOT_HANDSHAKING:
-                               if (success && message.hasRemaining()) {
+                               if (result.bytesProduced() != 0 && 
message.hasRemaining()) {
                                        if (LOGGER.isDebugEnabled()) {
                                                LOGGER.debug("{} qreceive() - 
trying to decode more messages, looping", toString());
                                        }
@@ -273,7 +274,6 @@ public class SSL2HandlerG0 extends SSL2Handler {
                                        }
                                        return false;
                                } else {
-                                       source.rewind();
                                        EncryptedWriteRequest encrypted = new 
EncryptedWriteRequest(dest, request);
                                        this.mAckQueue.add(encrypted);
                                        if (LOGGER.isDebugEnabled()) {

Reply via email to