Files
ardour/libs
Robin Gareus 32a0c6a3ff Drop TMM ports when closing session, or backend goes away
TMM ports cannot exist without a backend.
This fixes crashes where the PortEngine is re-initialized
(backend change):

Previously, TMM ports were only dropped (and recreated)
in TMM::restart() called from ARDOUR::init_post_engine().
When starting a new backend the old one is already destroyed,
but TM still held reference to Ports owned by that backend.
Calling the port's d'tor caused a memory corruption trying to
acquire the backend's port_callback_mutex:

e.g. When creating new session with a different backend
from a running instance, or unit-test after call to
AudioEngine::destroy(): https://pastebin.com/4D6pLA5s
2020-10-22 07:38:00 +02:00
..
2020-07-09 02:10:28 +02:00
2020-10-15 20:40:35 +02:00
2020-03-02 17:58:03 +01:00
2020-03-23 17:38:08 +01:00
2020-01-22 02:00:25 +01:00
2020-10-18 15:28:10 +02:00
2019-09-03 05:01:59 +02:00
2020-03-29 14:56:22 +02:00