diff options
author | Greg Wilkins | 2015-12-02 05:07:59 +0000 |
---|---|---|
committer | Greg Wilkins | 2015-12-02 05:07:59 +0000 |
commit | 4bbd060ca8468f3289ef049379a7cf4ec20ececa (patch) | |
tree | 15e9fad5a78d4fa28041760496249c3ffe606e0f /jetty-io | |
parent | 5e40bf29aa6ff5071219c4db070d0d8ed83d1f39 (diff) | |
download | org.eclipse.jetty.project-4bbd060ca8468f3289ef049379a7cf4ec20ececa.tar.gz org.eclipse.jetty.project-4bbd060ca8468f3289ef049379a7cf4ec20ececa.tar.xz org.eclipse.jetty.project-4bbd060ca8468f3289ef049379a7cf4ec20ececa.zip |
483427 - AsyncContext complete while pending async Reads/Writes
Diffstat (limited to 'jetty-io')
3 files changed, 21 insertions, 13 deletions
diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java index c33ab5a3f6..f51e038c57 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ChannelEndPoint.java @@ -138,18 +138,24 @@ public abstract class ChannelEndPoint extends AbstractEndPoint implements Manage LOG.debug("doClose {}", this); try { - try - { - _channel.close(); - } - catch (IOException e) - { - LOG.debug(e); - } - finally - { - super.doClose(); - } + _channel.close(); + } + catch (IOException e) + { + LOG.debug(e); + } + finally + { + super.doClose(); + } + } + + @Override + public void onClose() + { + try + { + super.onClose(); } finally { @@ -157,6 +163,7 @@ public abstract class ChannelEndPoint extends AbstractEndPoint implements Manage _selector.onClose(this); } } + @Override public int fill(ByteBuffer buffer) throws IOException diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/FillInterest.java b/jetty-io/src/main/java/org/eclipse/jetty/io/FillInterest.java index b5c48c4b08..8639ee8c91 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/FillInterest.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/FillInterest.java @@ -131,6 +131,8 @@ public abstract class FillInterest public void onClose() { Callback callback = _interested.get(); + if (LOG.isDebugEnabled()) + LOG.debug("{} onClose {}",this,callback); if (callback != null && _interested.compareAndSet(callback, null)) callback.failed(new ClosedChannelException()); } diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/SelectorManager.java b/jetty-io/src/main/java/org/eclipse/jetty/io/SelectorManager.java index af0853b605..fe170f7f7c 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/SelectorManager.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/SelectorManager.java @@ -297,7 +297,6 @@ public abstract class SelectorManager extends AbstractLifeCycle implements Dumpa */ protected void endPointClosed(EndPoint endpoint) { - endpoint.onClose(); } /** |