diff --git a/common/src/main/java/io/netty/util/Recycler.java b/common/src/main/java/io/netty/util/Recycler.java index 30425f7947..2164ac3127 100644 --- a/common/src/main/java/io/netty/util/Recycler.java +++ b/common/src/main/java/io/netty/util/Recycler.java @@ -479,16 +479,19 @@ public abstract class Recycler { } boolean scavengeSome() { + WeakOrderQueue prev; WeakOrderQueue cursor = this.cursor; if (cursor == null) { + prev = null; cursor = head; if (cursor == null) { return false; } + } else { + prev = this.prev; } boolean success = false; - WeakOrderQueue prev = this.prev; do { if (cursor.transfer(this)) { success = true;