You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by tr...@apache.org on 2007/12/04 08:37:24 UTC

svn commit: r600818 - /mina/trunk/core/src/main/java/org/apache/mina/common/DefaultIoFuture.java

Author: trustin
Date: Mon Dec  3 23:37:24 2007
New Revision: 600818

URL: http://svn.apache.org/viewvc?rev=600818&view=rev
Log:
Fixed a bug that DefaultIoFuture.checkDeadLock() raises a false alarm

Modified:
    mina/trunk/core/src/main/java/org/apache/mina/common/DefaultIoFuture.java

Modified: mina/trunk/core/src/main/java/org/apache/mina/common/DefaultIoFuture.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/common/DefaultIoFuture.java?rev=600818&r1=600817&r2=600818&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/common/DefaultIoFuture.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/common/DefaultIoFuture.java Mon Dec  3 23:37:24 2007
@@ -161,6 +161,12 @@
     }
 
     private void checkDeadLock() {
+        // Only read / write / connect / write future can cause dead lock. 
+        if (!(this instanceof CloseFuture || this instanceof WriteFuture ||
+              this instanceof ReadFuture || this instanceof ConnectFuture)) {
+            return;
+        }
+        
         IllegalStateException e = new IllegalStateException(
                 "DEAD LOCK: " + IoFuture.class.getSimpleName() +
                 ".await() was invoked from an I/O processor thread.  " +