Author: markt
Date: Thu Sep 19 11:07:28 2013
New Revision: 1524693

URL: http://svn.apache.org/r1524693
Log:
Revert addition of closing flag on wrapper. A more robust solution is required.

Modified:
    tomcat/tc7.0.x/trunk/   (props changed)
    tomcat/tc7.0.x/trunk/java/org/apache/coyote/AbstractProtocol.java
    
tomcat/tc7.0.x/trunk/java/org/apache/coyote/http11/upgrade/AprServletInputStream.java
    
tomcat/tc7.0.x/trunk/java/org/apache/coyote/http11/upgrade/AprServletOutputStream.java
    tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/net/SocketWrapper.java

Propchange: tomcat/tc7.0.x/trunk/
------------------------------------------------------------------------------
  Merged /tomcat/trunk:r1524683

Modified: tomcat/tc7.0.x/trunk/java/org/apache/coyote/AbstractProtocol.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/coyote/AbstractProtocol.java?rev=1524693&r1=1524692&r2=1524693&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/java/org/apache/coyote/AbstractProtocol.java (original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/coyote/AbstractProtocol.java Thu Sep 
19 11:07:28 2013
@@ -675,7 +675,6 @@ public abstract class AbstractProtocol i
                 } else {
                     // Connection closed. OK to recycle the processor. Upgrade
                     // processors are not recycled.
-                    wrapper.setClosing(true);
                     connections.remove(socket);
                     if (processor.isUpgrade()) {
                         processor.getHttpUpgradeHandler().destroy();

Modified: 
tomcat/tc7.0.x/trunk/java/org/apache/coyote/http11/upgrade/AprServletInputStream.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/coyote/http11/upgrade/AprServletInputStream.java?rev=1524693&r1=1524692&r2=1524693&view=diff
==============================================================================
--- 
tomcat/tc7.0.x/trunk/java/org/apache/coyote/http11/upgrade/AprServletInputStream.java
 (original)
+++ 
tomcat/tc7.0.x/trunk/java/org/apache/coyote/http11/upgrade/AprServletInputStream.java
 Thu Sep 19 11:07:28 2013
@@ -50,7 +50,7 @@ public class AprServletInputStream exten
         try {
             readLock.lock();
             if (wrapper.getBlockingStatus() == block) {
-                if (closed || wrapper.isClosing()) {
+                if (closed) {
                     throw new IOException(sm.getString("apr.closed"));
                 }
                 result = Socket.recv(socket, b, off, len);
@@ -70,7 +70,7 @@ public class AprServletInputStream exten
                 try {
                     readLock.lock();
                     writeLock.unlock();
-                    if (closed || wrapper.isClosing()) {
+                    if (closed) {
                         throw new IOException(sm.getString("apr.closed"));
                     }
                     result = Socket.recv(socket, b, off, len);

Modified: 
tomcat/tc7.0.x/trunk/java/org/apache/coyote/http11/upgrade/AprServletOutputStream.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/coyote/http11/upgrade/AprServletOutputStream.java?rev=1524693&r1=1524692&r2=1524693&view=diff
==============================================================================
--- 
tomcat/tc7.0.x/trunk/java/org/apache/coyote/http11/upgrade/AprServletOutputStream.java
 (original)
+++ 
tomcat/tc7.0.x/trunk/java/org/apache/coyote/http11/upgrade/AprServletOutputStream.java
 Thu Sep 19 11:07:28 2013
@@ -60,7 +60,7 @@ public class AprServletOutputStream exte
         try {
             readLock.lock();
             if (wrapper.getBlockingStatus() == block) {
-                if (closed || wrapper.isClosing()) {
+                if (closed) {
                     throw new IOException(sm.getString("apr.closed"));
                 }
                 return doWriteInternal(b, off, len);
@@ -83,7 +83,7 @@ public class AprServletOutputStream exte
             try {
                 readLock.lock();
                 writeLock.unlock();
-                if (closed || wrapper.isClosing()) {
+                if (closed) {
                     throw new IOException(sm.getString("apr.closed"));
                 }
                 return doWriteInternal(b, off, len);

Modified: 
tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/net/SocketWrapper.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/net/SocketWrapper.java?rev=1524693&r1=1524692&r2=1524693&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/net/SocketWrapper.java 
(original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/net/SocketWrapper.java Thu 
Sep 19 11:07:28 2013
@@ -52,17 +52,6 @@ public class SocketWrapper<E> {
      */
     private final Object writeThreadLock = new Object();
 
-    /*
-     * Used to indicate that the socket is in the process of closing / has been
-     * closed. Once this flag has been set, no further reads or writes should
-     * take place. Its primary purpose is with upgraded connections where a
-     * socket may be in use in application code with no immediate way to signal
-     * that the socket is no longer valid. Checking this flag before any
-     * application triggered read or write will enable an IOException to be
-     * thrown.
-     */
-    private boolean closing = false;
-
     public SocketWrapper(E socket) {
         this.socket = socket;
         ReentrantReadWriteLock lock = new ReentrantReadWriteLock();
@@ -100,13 +89,10 @@ public class SocketWrapper<E> {
         return blockingStatusWriteLock;
     }
     public Object getWriteThreadLock() { return writeThreadLock; }
-    public boolean isClosing() { return closing; }
-    public void setClosing(boolean closing) { this.closing = closing; }
 
     public void reset(E socket, long timeout) {
         async = false;
         blockingStatus = true;
-        closing = false;
         comet = false;
         error = false;
         keepAliveLeft = 100;



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to