From 1ad7d0464f8c5549d8de3972db78f6f4f7538d23 Mon Sep 17 00:00:00 2001 From: Jason Mercer Date: Fri, 10 Jun 2016 10:30:44 -0400 Subject: [PATCH] Move queue operations to after debug message so that tenses of message match reality. Before this change a queue with a limit of 1 element would report the following debug message: Incoming queue full for topic "baz". Discarding oldest message (current queue size [0]) which implies that the queue is full when it holds 0 elements. --- clients/roscpp/src/libros/subscription_queue.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/clients/roscpp/src/libros/subscription_queue.cpp b/clients/roscpp/src/libros/subscription_queue.cpp index e436bb84a7..ac7e89a269 100644 --- a/clients/roscpp/src/libros/subscription_queue.cpp +++ b/clients/roscpp/src/libros/subscription_queue.cpp @@ -59,9 +59,6 @@ void SubscriptionQueue::push(const SubscriptionCallbackHelperPtr& helper, const if(fullNoLock()) { - queue_.pop_front(); - --queue_size_; - if (!full_) { ROS_DEBUG("Incoming queue full for topic \"%s\". Discarding oldest message (current queue size [%d])", topic_.c_str(), (int)queue_.size()); @@ -73,6 +70,9 @@ void SubscriptionQueue::push(const SubscriptionCallbackHelperPtr& helper, const { *was_full = true; } + + queue_.pop_front(); + --queue_size_; } else {