void
WaveView::stop_drawing_thread ()
{
- if (_drawing_thread) {
+ while (_drawing_thread) {
Glib::Threads::Mutex::Lock lm (request_queue_lock);
g_atomic_int_set (&drawing_thread_should_quit, 1);
request_cond.signal ();
}
if (request_queue.empty()) {
- assert (g_atomic_int_get (&drawing_thread_should_quit));
- continue; // or break;
+ continue;
}
/* remove the request from the queue (remember: the "request"