Fix two small bugs in ControlProtocolManager:
1) set_active was being called twice 2) control surface objects were deleted in drop_session, but not recreated in set_session git-svn-id: svn://localhost/ardour2/trunk@1467 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
1cf6978cad
commit
4daf15435b
@ -43,7 +43,6 @@ ControlProtocolManager::~ControlProtocolManager()
|
||||
}
|
||||
|
||||
control_protocol_info.clear();
|
||||
|
||||
}
|
||||
|
||||
void
|
||||
@ -75,12 +74,11 @@ ControlProtocolManager::drop_session ()
|
||||
delete *p;
|
||||
}
|
||||
control_protocols.clear ();
|
||||
|
||||
|
||||
for (list<ControlProtocolInfo*>::iterator p = control_protocol_info.begin(); p != control_protocol_info.end(); ++p) {
|
||||
delete *p;
|
||||
// otherwise the ControlProtocol instances are not recreated in set_session
|
||||
(*p)->requested = true;
|
||||
}
|
||||
|
||||
control_protocol_info.clear();
|
||||
}
|
||||
}
|
||||
|
||||
@ -106,10 +104,6 @@ ControlProtocolManager::instantiate (ControlProtocolInfo& cpi)
|
||||
Glib::Mutex::Lock lm (protocols_lock);
|
||||
control_protocols.push_back (cpi.protocol);
|
||||
|
||||
if (cpi.state) {
|
||||
cpi.protocol->set_state (*cpi.state);
|
||||
}
|
||||
|
||||
return cpi.protocol;
|
||||
}
|
||||
|
||||
@ -297,7 +291,6 @@ ControlProtocolManager::set_state (const XMLNode& node)
|
||||
if ((prop = (*citer)->property (X_("name"))) != 0) {
|
||||
ControlProtocolInfo* cpi = cpi_by_name (prop->value());
|
||||
if (cpi) {
|
||||
|
||||
if (!(*citer)->children().empty()) {
|
||||
cpi->state = (*citer)->children().front ();
|
||||
} else {
|
||||
|
@ -2,7 +2,6 @@
|
||||
where ENSURE_CORRECT_THREAD is a macro that is modelled on ENSURE_GUI_THREAD
|
||||
if the handler is not called in the "correct thread", it will use a pseudo-RT-safe-enough technique to get the correct thread to recall "handler" later on, and return.
|
||||
|
||||
* occasional hang on startup. deadlock?
|
||||
* finish button mapping
|
||||
* discuss button mapping for Ardour
|
||||
* concurrency for bank switching? And make sure "old" events aren't sent to "new" faders
|
||||
@ -19,6 +18,7 @@
|
||||
* power-cycling of surface. fd_midiport doesn't close.
|
||||
* remove couts
|
||||
* jog with transport rolling doesn't work properly
|
||||
* docs in manual
|
||||
|
||||
Later
|
||||
-----
|
||||
@ -28,7 +28,7 @@ Later
|
||||
Actual Mackie
|
||||
-------------
|
||||
* docs claim that unit will send a host query on init.
|
||||
* test Mackie surface object. Apparently led rings don't work
|
||||
* test Mackie surface object. Apparently led rings don't work. Stereo busses?
|
||||
* timecode & 55 char displays
|
||||
* midi bandwidth
|
||||
|
||||
@ -36,8 +36,6 @@ Bugs
|
||||
----
|
||||
|
||||
* get_state isn't called on deactivate
|
||||
* close existing and load other session doesn't start control surface
|
||||
* set_state is called twice from the control_manager
|
||||
* routes "forget" their remote_id between session save and the next session load
|
||||
* definitely something wrong with remote_id assignment on session create
|
||||
(master strip assigned 0).
|
||||
|
Loading…
Reference in New Issue
Block a user