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 2017/05/09 20:02:50 UTC

[21/34] httpcomponents-core git commit: HTTPASYNC-77: reverted previous revision; applied a better fix

HTTPASYNC-77: reverted previous revision; applied a better fix

git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpcore/branches/4.3.x@1598894 13f79535-47bb-0310-9956-ffa450edef68


Project: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/commit/fc73d8d8
Tree: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/tree/fc73d8d8
Diff: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/diff/fc73d8d8

Branch: refs/heads/4.3.x
Commit: fc73d8d8d54ee8bca71774716a003554ec60e182
Parents: 08d771a
Author: Oleg Kalnichevski <ol...@apache.org>
Authored: Sat May 31 18:35:06 2014 +0000
Committer: Oleg Kalnichevski <ol...@apache.org>
Committed: Sat May 31 18:35:06 2014 +0000

----------------------------------------------------------------------
 .../http/impl/nio/reactor/AbstractMultiworkerIOReactor.java    | 6 ++++++
 1 file changed, 6 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/fc73d8d8/httpcore-nio/src/main/java/org/apache/http/impl/nio/reactor/AbstractMultiworkerIOReactor.java
----------------------------------------------------------------------
diff --git a/httpcore-nio/src/main/java/org/apache/http/impl/nio/reactor/AbstractMultiworkerIOReactor.java b/httpcore-nio/src/main/java/org/apache/http/impl/nio/reactor/AbstractMultiworkerIOReactor.java
index 8177c7f..426723e 100644
--- a/httpcore-nio/src/main/java/org/apache/http/impl/nio/reactor/AbstractMultiworkerIOReactor.java
+++ b/httpcore-nio/src/main/java/org/apache/http/impl/nio/reactor/AbstractMultiworkerIOReactor.java
@@ -545,6 +545,12 @@ public abstract class AbstractMultiworkerIOReactor implements IOReactor {
             if (this.status.compareTo(IOReactorStatus.ACTIVE) > 0) {
                 return;
             }
+            if (this.status.compareTo(IOReactorStatus.INACTIVE) == 0) {
+                this.status = IOReactorStatus.SHUT_DOWN;
+                cancelRequests();
+                this.selector.close();
+                return;
+            }
             this.status = IOReactorStatus.SHUTDOWN_REQUEST;
         }
         this.selector.wakeup();