diff options
Diffstat (limited to 'cpp/src/qpid/cluster/Connection.cpp')
| -rw-r--r-- | cpp/src/qpid/cluster/Connection.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/cpp/src/qpid/cluster/Connection.cpp b/cpp/src/qpid/cluster/Connection.cpp index 394749aad2..17fcf6deb5 100644 --- a/cpp/src/qpid/cluster/Connection.cpp +++ b/cpp/src/qpid/cluster/Connection.cpp @@ -404,11 +404,13 @@ void Connection::shadowSetUser(const std::string& userId) { connection->setUserId(userId); } -void Connection::consumerState(const string& name, bool blocked, bool notifyEnabled, const SequenceNumber& position) +void Connection::consumerState(const string& name, bool blocked, bool notifyEnabled, const SequenceNumber& position, + uint32_t usedMsgCredit, uint32_t usedByteCredit) { broker::SemanticState::ConsumerImpl::shared_ptr c = semanticState().find(name); c->position = position; c->setBlocked(blocked); + if (c->getCredit().isWindowMode()) c->getCredit().consume(usedMsgCredit, usedByteCredit); if (notifyEnabled) c->enableNotify(); else c->disableNotify(); updateIn.consumerNumbering.add(c); } |
