summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--osdep/BlockingQueue.hpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/osdep/BlockingQueue.hpp b/osdep/BlockingQueue.hpp
index 6f81ddf2..9e2f73cb 100644
--- a/osdep/BlockingQueue.hpp
+++ b/osdep/BlockingQueue.hpp
@@ -63,6 +63,8 @@ public:
c.notify_one();
break;
}
+ if (!r)
+ break;
gc.wait(lock);
}
}
@@ -72,6 +74,7 @@ public:
std::lock_guard<std::mutex> lock(m);
r = false;
c.notify_all();
+ gc.notify_all();
}
inline bool get(T &value)