mirror of
https://github.com/Ardour/ardour.git
synced 2026-01-02 03:47:42 +01:00
[Summary] Fixed race condition: "should_do_transport_work" must not be dropped to 0 outside, it's illegal. It may cause "should_do_transport_work" go below 0 and make butler to round for a very-very long time (hang and possible lock of other threads) before stop() call returns.
_butler->stop () is synchronous, so its safe to wait in this call for butler to finish it's work. [Reviewed by] PDavis
This commit is contained in:
parent
d434661ff3
commit
6f3ee63199
1 changed files with 0 additions and 2 deletions
|
|
@ -1789,8 +1789,6 @@ Session::engine_halted ()
|
|||
*/
|
||||
|
||||
if (_butler) {
|
||||
g_atomic_int_set (&_butler->should_do_transport_work, 0);
|
||||
set_post_transport_work (PostTransportWork (0));
|
||||
_butler->stop ();
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue