Author: remy.maucherat(a)jboss.com
Date: 2008-03-05 11:04:41 -0500 (Wed, 05 Mar 2008)
New Revision: 471
Modified:
trunk/java/org/apache/coyote/http11/InternalAprOutputBuffer.java
Log:
- Fix same data corruption bug in the other place where the same algorithm is used.
- Comment out all sys.outs.
Modified: trunk/java/org/apache/coyote/http11/InternalAprOutputBuffer.java
===================================================================
--- trunk/java/org/apache/coyote/http11/InternalAprOutputBuffer.java 2008-03-05 15:44:28
UTC (rev 470)
+++ trunk/java/org/apache/coyote/http11/InternalAprOutputBuffer.java 2008-03-05 16:04:41
UTC (rev 471)
@@ -741,7 +741,7 @@
if (res < 0) {
throw new IOException("Error");
}
- System.out.println("Flushed leftover " + res);
+ //System.out.println("Flushed leftover " + res);
response.setLastWrite(res);
bbuf.clear();
if (pos < end) {
@@ -763,7 +763,7 @@
int res = 0;
while (pos < end) {
res = Socket.sendibb(socket, pos, bbuf.position());
- System.out.println("Write from main buffer " + res);
+ //System.out.println("Write from main buffer " + res);
if (res > 0) {
pos += res;
} else {
@@ -776,8 +776,8 @@
response.setLastWrite(res);
if (pos < end) {
leftover.allocate(end - pos, -1);
- bbuf.position(0);
- bbuf.limit(end - pos);
+ bbuf.position(pos);
+ bbuf.limit(end);
bbuf.get(leftover.getBuffer(), 0, end - pos);
leftover.setEnd(end - pos);
bbuf.clear();
@@ -802,9 +802,9 @@
// - If the call is asynchronous, throw an exception
// - If the call is synchronous, make a regular blocking write to flush the data
if (leftover.getLength() > 0) {
- System.out.println("Leftovers present");
+ //System.out.println("Leftovers present");
if (Http11AprProcessor.containerThread.get() == Boolean.TRUE) {
- System.out.println("Send leftovers using blocking");
+ //System.out.println("Send leftovers using blocking");
Socket.timeoutSet(socket, endpoint.getSoTimeout() * 1000);
// Send leftover bytes
res = Socket.send(socket, leftover.getBuffer(), leftover.getOffset(),
leftover.getEnd());
@@ -827,21 +827,17 @@
int end = bbuf.position();
while (pos < end) {
res = Socket.sendibb(socket, pos, bbuf.position());
- if (res == 0) {
- System.out.println("Wrote 0 bytes");
- }
+ //if (res == 0) System.out.println("Wrote 0 bytes");
if (res > 0) {
pos += res;
} else {
break;
}
- if (pos < end) {
- System.out.println("Wrote: " + pos + " of " +
end);
- }
+ //if (pos < end) System.out.println("Wrote: " + pos +
" of " + end);
}
if (pos < end) {
if (response.getFlushLeftovers() &&
(Http11AprProcessor.containerThread.get() == Boolean.TRUE)) {
- System.out.println("Blocking write of all data");
+ //System.out.println("Blocking write of all data");
// Switch to blocking mode and write the data
Socket.timeoutSet(socket, endpoint.getSoTimeout() * 1000);
res = Socket.sendbb(socket, 0, bbuf.position());
@@ -853,7 +849,7 @@
bbuf.limit(end);
bbuf.get(leftover.getBuffer(), 0, end - pos);
leftover.setEnd(end - pos);
- System.out.println("Put " + (end-pos) + " bytes in
leftover: " + new String(leftover.getBuffer(), 0, end - pos) + " l:" +
leftover.getBuffer().length);
+ //System.out.println("Put " + (end-pos) + " bytes
in leftover: " + new String(leftover.getBuffer(), 0, end - pos) + " l:" +
leftover.getBuffer().length);
// Call for a write event because it is possible that no further
write
// operations are made
if (!response.getFlushLeftovers()) {
@@ -896,7 +892,7 @@
// part of the same write operation)
if (leftover.getLength() > 0) {
leftover.append(chunk);
- System.out.println("Add chunk to leftover: " +
chunk.getLength());
+ //System.out.println("Add chunk to leftover: " +
chunk.getLength());
return chunk.getLength();
}
Show replies by date