release locks before deleting record
This commit is contained in:
parent
112fba182f
commit
dd525d1613
|
@ -86,17 +86,20 @@ EventLoop::invalidate_request (void* data)
|
|||
* inherit (indirectly) from sigc::trackable.
|
||||
*/
|
||||
|
||||
if (ir->event_loop) {
|
||||
Glib::Threads::Mutex::Lock lm (ir->event_loop->slot_invalidation_mutex());
|
||||
Glib::Threads::Mutex::Lock lr (ir->event_loop->request_invalidation_mutex());
|
||||
for (list<BaseRequestObject*>::iterator i = ir->requests.begin(); i != ir->requests.end(); ++i) {
|
||||
(*i)->valid = false;
|
||||
(*i)->invalidation = 0;
|
||||
if (ir->event_loop) {
|
||||
{
|
||||
Glib::Threads::Mutex::Lock lm (ir->event_loop->slot_invalidation_mutex());
|
||||
Glib::Threads::Mutex::Lock lr (ir->event_loop->request_invalidation_mutex());
|
||||
for (list<BaseRequestObject*>::iterator i = ir->requests.begin(); i != ir->requests.end(); ++i) {
|
||||
(*i)->valid = false;
|
||||
(*i)->invalidation = 0;
|
||||
}
|
||||
}
|
||||
// should this not always be deleted, regardless if there's an event_loop?
|
||||
delete ir;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
vector<EventLoop::ThreadBufferMapping>
|
||||
|
|
Loading…
Reference in New Issue
Block a user