You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2013/05/17 16:56:27 UTC

svn commit: r1483835 - in /httpcomponents/httpcore/trunk: RELEASE_NOTES.txt httpcore/src/main/java/org/apache/http/impl/BHttpConnectionBase.java httpcore/src/main/java/org/apache/http/impl/io/SessionInputBufferImpl.java

Author: olegk
Date: Fri May 17 14:56:27 2013
New Revision: 1483835

URL: http://svn.apache.org/r1483835
Log:
Blocking connections do not clean session input buffer when closed (input data from a read operation may still remain in the buffer if the connection is re-opened)

Modified:
    httpcomponents/httpcore/trunk/RELEASE_NOTES.txt
    httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/BHttpConnectionBase.java
    httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/io/SessionInputBufferImpl.java

Modified: httpcomponents/httpcore/trunk/RELEASE_NOTES.txt
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/RELEASE_NOTES.txt?rev=1483835&r1=1483834&r2=1483835&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/RELEASE_NOTES.txt (original)
+++ httpcomponents/httpcore/trunk/RELEASE_NOTES.txt Fri May 17 14:56:27 2013
@@ -1,3 +1,11 @@
+Changes since Release 4.3-BETA2 
+-------------------
+
+* Blocking connections do not clean session input buffer when closed (input data from a read
+  operation may still remain in the buffer if the connection is re-opened).
+  Contributed by Oleg Kalnichevski <olegk at apache.org>
+
+
 Release 4.3-BETA2 
 -------------------
 

Modified: httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/BHttpConnectionBase.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/BHttpConnectionBase.java?rev=1483835&r1=1483834&r2=1483835&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/BHttpConnectionBase.java (original)
+++ httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/BHttpConnectionBase.java Fri May 17 14:56:27 2013
@@ -310,6 +310,7 @@ public class BHttpConnectionBase impleme
         this.open = false;
         final Socket sock = this.socket;
         try {
+            this.inbuffer.clear();
             this.outbuffer.flush();
             try {
                 try {

Modified: httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/io/SessionInputBufferImpl.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/io/SessionInputBufferImpl.java?rev=1483835&r1=1483834&r2=1483835&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/io/SessionInputBufferImpl.java (original)
+++ httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/io/SessionInputBufferImpl.java Fri May 17 14:56:27 2013
@@ -157,6 +157,11 @@ public class SessionInputBufferImpl impl
         return this.bufferpos < this.bufferlen;
     }
 
+    public void clear() {
+        this.bufferpos = 0;
+        this.bufferlen = 0;;
+    }
+
     public int read() throws IOException {
         int noRead = 0;
         while (!hasBufferedData()) {