Fixed issue: NETTY-265 NIO datagram transport should not close the channel on write failure
This commit is contained in:
parent
974a18568a
commit
c7e2562f1c
|
@ -485,7 +485,7 @@ class NioDatagramWorker implements Runnable {
|
||||||
|
|
||||||
private static void writeNow(final NioDatagramChannel channel,
|
private static void writeNow(final NioDatagramChannel channel,
|
||||||
final int writeSpinCount) {
|
final int writeSpinCount) {
|
||||||
boolean open = true;
|
|
||||||
boolean addOpWrite = false;
|
boolean addOpWrite = false;
|
||||||
boolean removeOpWrite = false;
|
boolean removeOpWrite = false;
|
||||||
|
|
||||||
|
@ -556,10 +556,6 @@ class NioDatagramWorker implements Runnable {
|
||||||
evt.getFuture().setFailure(t);
|
evt.getFuture().setFailure(t);
|
||||||
evt = null;
|
evt = null;
|
||||||
fireExceptionCaught(channel, t);
|
fireExceptionCaught(channel, t);
|
||||||
if (t instanceof IOException) {
|
|
||||||
open = false;
|
|
||||||
close(channel, succeededFuture(channel));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
channel.inWriteNowLoop = false;
|
channel.inWriteNowLoop = false;
|
||||||
|
@ -567,12 +563,10 @@ class NioDatagramWorker implements Runnable {
|
||||||
|
|
||||||
fireWriteComplete(channel, writtenBytes);
|
fireWriteComplete(channel, writtenBytes);
|
||||||
|
|
||||||
if (open) {
|
if (addOpWrite) {
|
||||||
if (addOpWrite) {
|
setOpWrite(channel);
|
||||||
setOpWrite(channel);
|
} else if (removeOpWrite) {
|
||||||
} else if (removeOpWrite) {
|
clearOpWrite(channel);
|
||||||
clearOpWrite(channel);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user