Author: markt
Date: Tue Mar 10 20:44:56 2015
New Revision: 1665682
URL: http://svn.apache.org/r1665682
Log:
Follow-up to r1665297
Correct output loop. Forgot to increment offset for subsequent writes.
Modified:
tomcat/tc7.0.x/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java
Modified: tomcat/tc7.0.x/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java
URL:
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java?rev=1665682&r1=1665681&r2=1665682&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java
(original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java Tue
Mar 10 20:44:56 2015
@@ -302,11 +302,11 @@ public class AjpNioProcessor extends Abs
ByteBuffer writeBuffer =
socketWrapper.getSocket().getBufHandler().getWriteBuffer();
- int left = length;
+ int thisTime = 0;
int written = 0;
- while (left > 0) {
- int toWrite = Math.min(left, writeBuffer.remaining());
- writeBuffer.put(src, offset, toWrite);
+ while (written < length) {
+ int toWrite = Math.min(length - written, writeBuffer.remaining());
+ writeBuffer.put(src, offset + written, toWrite);
writeBuffer.flip();
@@ -318,13 +318,13 @@ public class AjpNioProcessor extends Abs
//ignore
}
try {
- written = pool.write(writeBuffer, socketWrapper.getSocket(),
+ thisTime = pool.write(writeBuffer, socketWrapper.getSocket(),
selector, writeTimeout, true);
} finally {
writeBuffer.clear();
if ( selector != null ) pool.put(selector);
}
- left -= written;
+ written += thisTime;
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]