diff --git a/base/include/base/semaphore.h b/base/include/base/semaphore.h index 85b7fbef1a..fe87eccdd4 100644 --- a/base/include/base/semaphore.h +++ b/base/include/base/semaphore.h @@ -128,7 +128,9 @@ namespace Genode { * Remove element from queue and wake up the corresponding * blocking thread */ - _queue.dequeue()->wake_up(); + Semaphore_queue::Element * element = _queue.dequeue(); + if (element) + element->wake_up(); } void down()