修复WriteMoreCompletionHandler的bug
This commit is contained in:
@@ -300,16 +300,16 @@ public class TcpAioAsyncConnection extends AsyncConnection {
|
|||||||
if (result >= 0) {
|
if (result >= 0) {
|
||||||
writeCount += result;
|
writeCount += result;
|
||||||
try {
|
try {
|
||||||
int index = -1;
|
int incre = -1;
|
||||||
for (int i = writeOffset; i < (writeOffset + writeLength); i++) {
|
for (int i = writeOffset; i < (writeOffset + writeLength); i++) {
|
||||||
if (writeBuffers[i].hasRemaining()) {
|
if (writeBuffers[i].hasRemaining()) {
|
||||||
index = i;
|
incre = i - writeOffset;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (index >= 0) {
|
if (incre >= 0) {
|
||||||
writeOffset += index;
|
writeOffset += incre;
|
||||||
writeLength -= index;
|
writeLength -= incre;
|
||||||
channel.write(writeBuffers, writeOffset, writeLength, writeTimeoutSeconds > 0 ? writeTimeoutSeconds : 60, TimeUnit.SECONDS, attachment, this);
|
channel.write(writeBuffers, writeOffset, writeLength, writeTimeoutSeconds > 0 ? writeTimeoutSeconds : 60, TimeUnit.SECONDS, attachment, this);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user