summaryrefslogtreecommitdiff
path: root/libs/ardour/audioengine.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2010-07-05 15:41:05 +0000
committerCarl Hetherington <carl@carlh.net>2010-07-05 15:41:05 +0000
commitdf2298c846527e71a794b957baec7684fabe46aa (patch)
tree89bf7f9dc9ba0fe050679fa8b05209c451063d74 /libs/ardour/audioengine.cc
parentc686dee0cee50b09f6c0eda3240b85dee1eaff8f (diff)
Reestablish libmidi++ JACK ports on jack reconnection, so that control MIDI can still be sent after a JACK disconnect/reconnect. Fixes remainder of #3301.
git-svn-id: svn://localhost/ardour2/branches/3.0@7373 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/audioengine.cc')
-rw-r--r--libs/ardour/audioengine.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/libs/ardour/audioengine.cc b/libs/ardour/audioengine.cc
index 0058acc7e2..b9ec8e465b 100644
--- a/libs/ardour/audioengine.cc
+++ b/libs/ardour/audioengine.cc
@@ -34,6 +34,7 @@
#include "midi++/jack.h"
#include "midi++/mmc.h"
+#include "midi++/manager.h"
#include "ardour/amp.h"
#include "ardour/audio_port.h"
@@ -1395,6 +1396,8 @@ AudioEngine::reconnect_to_jack ()
GET_PRIVATE_JACK_POINTER_RET (_jack,-1);
+ MIDI::Manager::instance()->reestablish (_priv_jack);
+
if (_session) {
_session->reset_jack_connection (_priv_jack);
jack_bufsize_callback (jack_get_buffer_size (_priv_jack));
@@ -1435,6 +1438,8 @@ AudioEngine::reconnect_to_jack ()
(*i)->reconnect ();
}
+ MIDI::Manager::instance()->reconnect ();
+
Running (); /* EMIT SIGNAL*/
start_metering_thread ();