From 08c7f0b2bc159b3b46a82decc137b79cafda2eec Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Tue, 13 Dec 2011 02:53:14 +0000 Subject: [PATCH] fix up XML property name for Meter::beats_per_bar (w/backward compat) git-svn-id: svn://localhost/ardour2/branches/3.0@10996 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/tempo.cc | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/libs/ardour/tempo.cc b/libs/ardour/tempo.cc index 1c36f129b4..e811692a77 100644 --- a/libs/ardour/tempo.cc +++ b/libs/ardour/tempo.cc @@ -167,13 +167,17 @@ MeterSection::MeterSection (const XMLNode& node) set_start (start); - if ((prop = node.property ("beats-per-bar")) == 0) { - error << _("MeterSection XML node has no \"beats-per-bar\" property") << endmsg; - throw failed_constructor(); + /* beats-per-bar is old; divisions-per-bar is new */ + + if ((prop = node.property ("divisions-per-bar")) == 0) { + if ((prop = node.property ("beats-per-bar")) == 0) { + error << _("MeterSection XML node has no \"beats-per-bar\" or \"divisions-per-bar\" property") << endmsg; + throw failed_constructor(); + } } if (sscanf (prop->value().c_str(), "%lf", &_divisions_per_bar) != 1 || _divisions_per_bar < 0.0) { - error << _("MeterSection XML node has an illegal \"beats-per-bar\" value") << endmsg; + error << _("MeterSection XML node has an illegal \"beats-per-bar\" or \"divisions-per-bar\" value") << endmsg; throw failed_constructor(); } @@ -210,7 +214,7 @@ MeterSection::get_state() const snprintf (buf, sizeof (buf), "%f", _note_type); root->add_property ("note-type", buf); snprintf (buf, sizeof (buf), "%f", _divisions_per_bar); - root->add_property ("beats-per-bar", buf); + root->add_property ("divisions-per-bar", buf); snprintf (buf, sizeof (buf), "%s", movable()?"yes":"no"); root->add_property ("movable", buf);