hopefully fix legacy session loading (tempo)
authornick_m <mainsbridge@gmail.com>
Sun, 26 Feb 2017 17:01:11 +0000 (04:01 +1100)
committerRobin Gareus <robin@gareus.org>
Mon, 27 Feb 2017 19:16:10 +0000 (20:16 +0100)
libs/ardour/tempo.cc

index c3ae1533dc33e71427667d59d503bb7c7eb21c0e..a45f6fb95e4a12ec5197005c7a56714cbeb45f1f 100644 (file)
@@ -155,6 +155,17 @@ TempoSection::TempoSection (const XMLNode& node, framecnt_t sample_rate)
                        _end_note_types_per_minute = _note_types_per_minute;
                        _legacy_end = true;
                }
+       } else {
+               _legacy_end = true;
+       }
+
+       if ((prop = node.property ("tempo-type")) != 0) {
+               TempoSection::Type old_type;
+
+               old_type = Type (string_2_enum (prop->value(), old_type));
+               if (old_type == TempoSection::Constant) {
+                       _end_note_types_per_minute = _note_types_per_minute;
+               }
        }
 
        if ((prop = node.property ("movable")) == 0) {
@@ -4501,8 +4512,6 @@ TempoMap::fix_legacy_end_session ()
                        if (prev_t) {
                                if (prev_t->type() == TempoSection::Ramp) {
                                        prev_t->set_end_note_types_per_minute (t->note_types_per_minute());
-                               } else {
-                                       prev_t->set_end_note_types_per_minute (prev_t->note_types_per_minute());
                                }
                        }