Handle early exception from AsynchronousFileChannel#write

Closes gh-36184
This commit is contained in:
rstoyanchev
2026-01-21 15:43:03 +01:00
parent c05ea841bc
commit 345fa51e77
@@ -1205,7 +1205,13 @@ public abstract class DataBufferUtils {
long pos = this.position.get();
Attachment attachment = new Attachment(byteBuffer, dataBuffer, iterator);
this.writing.set(true);
this.channel.write(byteBuffer, pos, attachment, this);
try {
this.channel.write(byteBuffer, pos, attachment, this);
}
catch (RuntimeException ex) {
// If the exception escapes, route it to the failure handler
failed(ex, attachment);
}
}
}