You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by jv...@apache.org on 2008/07/28 10:22:53 UTC
svn commit: r680286 -
/mina/trunk/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java
Author: jvermillard
Date: Mon Jul 28 01:22:53 2008
New Revision: 680286
URL: http://svn.apache.org/viewvc?rev=680286&view=rev
Log:
DIRMINA-610 too big messages aren't correctly flushed
Modified:
mina/trunk/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java
Modified: mina/trunk/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java?rev=680286&r1=680285&r2=680286&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java Mon Jul 28 01:22:53 2008
@@ -686,6 +686,12 @@
session, req, hasFragmentation,
maxWrittenBytes - writtenBytes,
currentTime);
+ if (localWrittenBytes > 0 && ((IoBuffer)message).hasRemaining() ) {
+ // the buffer isn't empty, we re-interest it in writing
+ writtenBytes += localWrittenBytes;
+ setInterestedInWrite(session, true);
+ return false;
+ }
} else if (message instanceof FileRegion) {
localWrittenBytes = writeFile(
session, req, hasFragmentation,