From b3e4122499a63d469ed3cbd6a7d90b8846604b62 Mon Sep 17 00:00:00 2001 From: Norman Maurer Date: Wed, 29 Jan 2014 13:56:42 +0100 Subject: [PATCH] [#2159] Not fail the ChannelPromise with WriteTimeoutException to prevent warning --- .../java/io/netty/handler/timeout/WriteTimeoutHandler.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/handler/src/main/java/io/netty/handler/timeout/WriteTimeoutHandler.java b/handler/src/main/java/io/netty/handler/timeout/WriteTimeoutHandler.java index 1513044e5e..297d4b06bc 100644 --- a/handler/src/main/java/io/netty/handler/timeout/WriteTimeoutHandler.java +++ b/handler/src/main/java/io/netty/handler/timeout/WriteTimeoutHandler.java @@ -111,8 +111,10 @@ public class WriteTimeoutHandler extends ChannelHandlerAdapter { final ScheduledFuture sf = ctx.executor().schedule(new Runnable() { @Override public void run() { - if (future.tryFailure(WriteTimeoutException.INSTANCE)) { - // If succeeded to mark as failure, notify the pipeline, too. + // Was not written yet so issue a write timeout + // The future itself will be failed with a ClosedChannelException once the close() was issued + // See https://github.com/netty/netty/issues/2159 + if (!future.isDone()) { try { writeTimedOut(ctx); } catch (Throwable t) {