Fix various issues when the engine disconnects:
Previously Port::PortDrop was never handled. The signal was disconnected directly when the connection is re-used by Port::PortSignalDrop. Ports::drop() was not called when the engine was stopped or disconnected, and port-handles were not invalidated. This lead to crashes whenever a port-related operation was performed while the engine was stopped. e.g. adding/removing tracks or plugins (latency recompute, notify port-engine) and various other operations.
This commit is contained in:
parent
4bbfb6ce50
commit
13c984c216
@ -183,7 +183,7 @@ private:
|
|||||||
void port_connected_or_disconnected (boost::weak_ptr<Port>, boost::weak_ptr<Port>, bool);
|
void port_connected_or_disconnected (boost::weak_ptr<Port>, boost::weak_ptr<Port>, bool);
|
||||||
void signal_drop ();
|
void signal_drop ();
|
||||||
void drop ();
|
void drop ();
|
||||||
PBD::ScopedConnection drop_connection;
|
PBD::ScopedConnectionList drop_connection;
|
||||||
PBD::ScopedConnection engine_connection;
|
PBD::ScopedConnection engine_connection;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user