From e3f1192b39150b70372b508032dc1204b747eaf6 Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Mon, 9 Jan 2017 15:51:17 +0100 Subject: Enable clearing and unblocking. --- vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'vespaclient-core/src/main/java') diff --git a/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java b/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java index 4c96a7efc0b..08243c4e0ec 100755 --- a/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java +++ b/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java @@ -223,10 +223,11 @@ public class SharedSender implements ReplyHandler { @Override protected boolean tryReleaseShared(int releases) { // Increment/Decrement count; signal when transition downwards to zero. + // releases == 0 means unblock all while ( true ) { int c = getState(); if ((c == 0) && (releases >= 0)) { return false; } - int nextc = (c > releases) ? c - releases : 0; + int nextc = (c > releases) ? ((releases != 0) ? c - releases : 0) : 0; if (compareAndSetState(c, nextc)) { return nextc == 0; } -- cgit v1.2.3