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/07/05 09:22:38 UTC

svn commit: r553402 - in /mina/branches/1.0/core/src/main/java/org/apache/mina/transport/socket/nio: SocketAcceptor.java SocketConnector.java

Author: trustin
Date: Thu Jul  5 00:22:37 2007
New Revision: 553402

URL: http://svn.apache.org/viewvc?view=rev&rev=553402
Log:
Fixed DIRMINA-374 (ArrayIndexOutOfBoundException in SocketAcceptor and SocketConnector)
* Applied Srikanth Veeramachaneni's solution

Modified:
    mina/branches/1.0/core/src/main/java/org/apache/mina/transport/socket/nio/SocketAcceptor.java
    mina/branches/1.0/core/src/main/java/org/apache/mina/transport/socket/nio/SocketConnector.java

Modified: mina/branches/1.0/core/src/main/java/org/apache/mina/transport/socket/nio/SocketAcceptor.java
URL: http://svn.apache.org/viewvc/mina/branches/1.0/core/src/main/java/org/apache/mina/transport/socket/nio/SocketAcceptor.java?view=diff&rev=553402&r1=553401&r2=553402
==============================================================================
--- mina/branches/1.0/core/src/main/java/org/apache/mina/transport/socket/nio/SocketAcceptor.java (original)
+++ mina/branches/1.0/core/src/main/java/org/apache/mina/transport/socket/nio/SocketAcceptor.java Thu Jul  5 00:22:37 2007
@@ -363,12 +363,12 @@
 
     private SocketIoProcessor nextProcessor()
     {
-        if ( processorDistributor++ < 0 ) 
-        { 
-            processorDistributor = 0; 
-        } 
-
-        return ioProcessors[processorDistributor % processorCount];
+        if ( this.processorDistributor == Integer.MAX_VALUE )
+        {
+            this.processorDistributor = Integer.MAX_VALUE % this.processorCount;
+        }
+        
+        return ioProcessors[processorDistributor++ % processorCount];
     }
 
     public IoServiceConfig getDefaultConfig()

Modified: mina/branches/1.0/core/src/main/java/org/apache/mina/transport/socket/nio/SocketConnector.java
URL: http://svn.apache.org/viewvc/mina/branches/1.0/core/src/main/java/org/apache/mina/transport/socket/nio/SocketConnector.java?view=diff&rev=553402&r1=553401&r2=553402
==============================================================================
--- mina/branches/1.0/core/src/main/java/org/apache/mina/transport/socket/nio/SocketConnector.java (original)
+++ mina/branches/1.0/core/src/main/java/org/apache/mina/transport/socket/nio/SocketConnector.java Thu Jul  5 00:22:37 2007
@@ -390,12 +390,12 @@
 
     private SocketIoProcessor nextProcessor()
     {
-        if ( processorDistributor++ < 0 ) 
-        { 
-            processorDistributor = 0; 
-        } 
-
-        return ioProcessors[processorDistributor % processorCount];
+        if ( this.processorDistributor == Integer.MAX_VALUE )
+        {
+            this.processorDistributor = Integer.MAX_VALUE % this.processorCount;
+        }
+        
+        return ioProcessors[processorDistributor++ % processorCount];
     }
 
     private class Worker implements Runnable