Tempo ramps - fix more wtfery.

This commit is contained in:
nick_m 2016-04-07 03:46:29 +10:00
parent fec6695876
commit ec29f5d64c

View file

@ -2908,6 +2908,18 @@ TempoMap::set_state (const XMLNode& node, int /*version*/)
_metrics.sort (cmp);
}
/* check for legacy sessions where bbt was the base musical unit for tempo */
for (Metrics::const_iterator i = _metrics.begin(); i != _metrics.end(); ++i) {
TempoSection* t;
if ((t = dynamic_cast<TempoSection*> (*i)) != 0) {
if (t->legacy_bbt().bars != 0) {
fix_legacy_session();
break;
}
break;
}
}
/* check for multiple tempo/meters at the same location, which
ardour2 somehow allowed.
*/
@ -2936,18 +2948,6 @@ TempoMap::set_state (const XMLNode& node, int /*version*/)
prev = i;
}
/* check for legacy sessions where bbt was the base musical unit for tempo */
for (Metrics::const_iterator i = _metrics.begin(); i != _metrics.end(); ++i) {
TempoSection* t;
if ((t = dynamic_cast<TempoSection*> (*i)) != 0) {
if (t->legacy_bbt().bars != 0) {
fix_legacy_session();
break;
}
break;
}
}
recompute_map (_metrics);
}