Index: src/libchengine/WaitableQueue.h =================================================================== diff -u -N -r0d5b67ee96b435d63f7bf075dc8e28603793b187 -r301444777085263aae7aff911dd56722f302597e --- src/libchengine/WaitableQueue.h (.../WaitableQueue.h) (revision 0d5b67ee96b435d63f7bf075dc8e28603793b187) +++ src/libchengine/WaitableQueue.h (.../WaitableQueue.h) (revision 301444777085263aae7aff911dd56722f302597e) @@ -23,6 +23,8 @@ #include #include #include "TEvent.h" +#include "..\libchcore\ErrorCodes.h" +#include "..\libchcore\TCoreException.h" namespace chengine { @@ -46,6 +48,9 @@ { std::lock_guard lock(m_lock); + if (m_queue.empty()) + throw chcore::TCoreException(chcore::eErr_BoundsExceeded, L"Tried to pop from empty container", LOCATION); + T value = std::move(m_queue.front()); m_queue.pop_front();