From 48656a16e9cc77abe954aedec46ce2df5738536d Mon Sep 17 00:00:00 2001 From: markt Date: Mon, 16 May 2011 22:02:04 +0000 Subject: [PATCH] Add Filip's additional patch to correctly handle infinite read timeouts git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@1103923 13f79535-47bb-0310-9956-ffa450edef68 --- java/org/apache/tomcat/util/net/NioBlockingSelector.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/java/org/apache/tomcat/util/net/NioBlockingSelector.java b/java/org/apache/tomcat/util/net/NioBlockingSelector.java index 107f8c00e..21a856823 100644 --- a/java/org/apache/tomcat/util/net/NioBlockingSelector.java +++ b/java/org/apache/tomcat/util/net/NioBlockingSelector.java @@ -166,7 +166,11 @@ public class NioBlockingSelector { try { if ( att.getReadLatch()==null || att.getReadLatch().getCount()==0) att.startReadLatch(1); poller.add(att,SelectionKey.OP_READ, reference); - att.awaitReadLatch(readTimeout,TimeUnit.MILLISECONDS); + if (readTimeout < 0) { + att.awaitReadLatch(Long.MAX_VALUE, TimeUnit.MILLISECONDS); + } else { + att.awaitReadLatch(readTimeout, TimeUnit.MILLISECONDS); + } }catch (InterruptedException ignore) { Thread.interrupted(); } -- 2.11.0