diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2012-07-10 04:05:48 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2012-07-10 04:05:48 +0000 |
commit | 65bb82ce82365ce44295324b40d49b7d1c043b4c (patch) | |
tree | 7f845543ae76e9db5eb7824a529e50fda7ab950d /gtk2_ardour/editor_drag.cc | |
parent | 2de80a5e90dca50c5c018afdca6b11ca80f25f7a (diff) |
don't spin on Session::timecode_transmission_suspended() if disconnected from JACK because it will never be re-enabled (fixes lockups when disconnected)
git-svn-id: svn://localhost/ardour2/branches/3.0@13007 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_drag.cc')
-rw-r--r-- | gtk2_ardour/editor_drag.cc | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/gtk2_ardour/editor_drag.cc b/gtk2_ardour/editor_drag.cc index 8ae618b37f..797ed4ffd7 100644 --- a/gtk2_ardour/editor_drag.cc +++ b/gtk2_ardour/editor_drag.cc @@ -29,6 +29,7 @@ #include "gtkmm2ext/utils.h" +#include "ardour/audioengine.h" #include "ardour/audioregion.h" #include "ardour/dB.h" #include "ardour/midi_region.h" @@ -2170,9 +2171,11 @@ CursorDrag::start_grab (GdkEvent* event, Gdk::Cursor* c) s->cancel_audition (); } - s->request_suspend_timecode_transmission (); - while (!s->timecode_transmission_suspended ()) { - /* twiddle our thumbs */ + if (AudioEngine::instance()->connected()) { + s->request_suspend_timecode_transmission (); + while (AudioEngine::instance()->connected() && !s->timecode_transmission_suspended ()) { + /* twiddle our thumbs */ + } } } |