From a0b28d6c82abec5f953e6f5e8df829850756c7dd Mon Sep 17 00:00:00 2001 From: Scott Mitchell Date: Fri, 8 Apr 2016 09:44:42 -0700 Subject: [PATCH] Fix potential assertion error introduced by 0bc93dd Motivation: Commit 0bc93dd introduced a potential assertion failure, if the deprecated method would be used. Modifications: Fix the potential assertion error. Result: Regression removed --- .../main/java/io/netty/channel/nio/AbstractNioChannel.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/transport/src/main/java/io/netty/channel/nio/AbstractNioChannel.java b/transport/src/main/java/io/netty/channel/nio/AbstractNioChannel.java index 7a33133b63..582e6ae6fa 100644 --- a/transport/src/main/java/io/netty/channel/nio/AbstractNioChannel.java +++ b/transport/src/main/java/io/netty/channel/nio/AbstractNioChannel.java @@ -159,7 +159,10 @@ public abstract class AbstractNioChannel extends AbstractChannel { }); } } else { - setReadPending0(readPending); + // Best effort if we are not registered yet clear readPending. + // NB: We only set the boolean field instead of calling clearReadPending0(), because the SelectionKey is + // not set yet so it would produce an assertion failure. + this.readPending = readPending; } }