summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/rabbit_limiter.erl6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/rabbit_limiter.erl b/src/rabbit_limiter.erl
index 5774aee063..efc499cdf8 100644
--- a/src/rabbit_limiter.erl
+++ b/src/rabbit_limiter.erl
@@ -176,8 +176,10 @@ drained(Limiter = #token{credits = Credits}) ->
end, {[], Credits}, Credits),
{CTagCredits, Limiter#token{credits = Credits2}}.
-forget_consumer(Limiter = #token{credits = Credits}, CTag) ->
- Limiter#token{credits = dict:erase(CTag, Credits)}.
+forget_consumer(Limiter = #token{credits = Credits,
+ blocked_ctags = BCTags}, CTag) ->
+ Limiter#token{credits = dict:erase(CTag, Credits),
+ blocked_ctags = BCTags -- [CTag]}.
copy_queue_state(#token{credits = Credits, blocked_ctags = BCTags}, Token) ->
Token#token{credits = Credits, blocked_ctags = BCTags}.