Author: fhanik
Date: Sat Oct 20 08:49:58 2007
New Revision: 586748
URL: http://svn.apache.org/viewvc?rev=586748&view=rev
Log:
bring sand box up to date with patches from 6.0
Modified:
tomcat/sandbox/gdev6x/java/org/apache/coyote/http11/InternalNioOutputBuffer.java
Modified:
tomcat/sandbox/gdev6x/java/org/apache/coyote/http11/InternalNioOutputBuffer.java
URL:
http://svn.apache.org/viewvc/tomcat/sandbox/gdev6x/java/org/apache/coyote/http11/InternalNioOutputBuffer.java?rev=586748&r1=586747&r2=586748&view=diff
==============================================================================
---
tomcat/sandbox/gdev6x/java/org/apache/coyote/http11/InternalNioOutputBuffer.java
(original)
+++
tomcat/sandbox/gdev6x/java/org/apache/coyote/http11/InternalNioOutputBuffer.java
Sat Oct 20 08:49:58 2007
@@ -401,7 +401,7 @@
// ------------------------------------------------ HTTP/1.1 Output Methods
- /**
+ /**
* Send an acknoledgement.
*/
public void sendAck()
@@ -409,8 +409,8 @@
if (!committed) {
//Socket.send(socket, Constants.ACK_BYTES, 0,
Constants.ACK_BYTES.length) < 0
- ByteBuffer buf =
ByteBuffer.wrap(Constants.ACK_BYTES,0,Constants.ACK_BYTES.length);
- writeToSocket(buf,true);
+ socket.getBufHandler()
.getWriteBuffer().put(Constants.ACK_BYTES,0,Constants.ACK_BYTES.length);
+ writeToSocket(socket.getBufHandler() .getWriteBuffer(),true,true);
}
}
@@ -423,11 +423,8 @@
* @throws IOException
* @todo Fix non blocking write properly
*/
- private synchronized int writeToSocket(ByteBuffer bytebuffer, boolean
block) throws IOException {
- if (socket.getBufHandler().getWriteBuffer() != bytebuffer) {
- socket.getBufHandler().getWriteBuffer().put(bytebuffer);
- bytebuffer = socket.getBufHandler().getWriteBuffer();
- }
+ private synchronized int writeToSocket(ByteBuffer bytebuffer, boolean
block, boolean flip) throws IOException {
+ if ( flip ) bytebuffer.flip();
int written = 0;
NioEndpoint.KeyAttachment att =
(NioEndpoint.KeyAttachment)socket.getAttachment(false);
@@ -770,7 +767,7 @@
//write to the socket, if there is anything to write
if (socket.getBufHandler().getWriteBuffer().position() > 0) {
socket.getBufHandler().getWriteBuffer().flip();
- writeToSocket(socket.getBufHandler().getWriteBuffer(),true);
+ writeToSocket(socket.getBufHandler().getWriteBuffer(),true, false);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]