diff options
author | Robin Gareus <robin@gareus.org> | 2016-05-03 13:56:08 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-05-03 14:27:52 +0200 |
commit | 4c40fe8d042a7987ea17763210dbdad8de64fb2a (patch) | |
tree | c2437ff56ae9fbe8cacb4be1479a965a5d488a58 /gtk2_ardour | |
parent | 433f18049b08ebfd486fd33e5e7696b2ce5ac3fb (diff) |
another (non critical) concurrency issue:
Ignore latency-updates while removing tracks.
remove_tracks() calls disconnect_all() which can trigger the backend
to perform a latency-recompute in a different thread (process thread).
That calls Session::update_latency() which iterates over all routes
including the one(s) to be deleted.
At the same time disconnect_all() may propagate Port::PostDisconnect()
leading to a lock contention.
(no crash just a lot of unnecessary work. remove_routes() calls
update_latency_compensation() which triggers a recompute if needed)
Diffstat (limited to 'gtk2_ardour')
0 files changed, 0 insertions, 0 deletions