summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2012-11-11 23:11:53 +0000
committerRobin Gareus <robin@gareus.org>2012-11-11 23:11:53 +0000
commit4e1a813f4dc621084d6d5acf59c33e1ce90947e8 (patch)
treebfdac002019616af9cbfaeefa03a15ad3c7cdf46 /gtk2_ardour
parent6657159ba81ec2d741cbd35bf198c61a5e30839f (diff)
MIDIClock is not a Timecode slave, fix segfault
git-svn-id: svn://localhost/ardour2/branches/3.0@13446 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/ardour_ui.cc3
-rw-r--r--gtk2_ardour/audio_clock.cc13
2 files changed, 14 insertions, 2 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index ab25366855..a123468aae 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -1077,8 +1077,9 @@ ARDOUR_UI::update_timecode_format ()
if (_session) {
bool matching;
TimecodeSlave* tcslave;
+ SyncSource sync_src = Config->get_sync_source();
- if ((tcslave = dynamic_cast<TimecodeSlave*>(_session->slave())) != 0) {
+ if ((sync_src == LTC || sync_src == MTC) && (tcslave = dynamic_cast<TimecodeSlave*>(_session->slave())) != 0) {
matching = (tcslave->apparent_timecode_format() == _session->config.get_timecode_format());
} else {
matching = true;
diff --git a/gtk2_ardour/audio_clock.cc b/gtk2_ardour/audio_clock.cc
index c816c46857..a0adb65e7c 100644
--- a/gtk2_ardour/audio_clock.cc
+++ b/gtk2_ardour/audio_clock.cc
@@ -1028,9 +1028,20 @@ AudioClock::set_slave_info ()
INFO_FONT_SIZE, sync_source_to_string(sync_src, true)));
_right_layout->set_text ("");
break;
+ case MIDIClock:
+ if (slave) {
+ _left_layout->set_markup (string_compose ("<span size=\"%1\" foreground=\"white\">%2</span>",
+ INFO_FONT_SIZE, sync_source_to_string(sync_src, true)));
+ _right_layout->set_markup (string_compose ("<span size=\"%1\" foreground=\"white\">%2</span>",
+ INFO_FONT_SIZE, slave->approximate_current_delta()));
+ } else {
+ _left_layout->set_markup (string_compose ("<span size=\"%1\" foreground=\"white\">%2</span>",
+ INFO_FONT_SIZE, _("--pending--")));
+ _right_layout->set_text ("");
+ }
+ break;
case LTC:
case MTC:
- case MIDIClock:
if (slave) {
bool matching;
TimecodeSlave* tcslave;