summaryrefslogtreecommitdiff
path: root/libs/ardour/session_state.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2011-02-26 11:36:27 +0000
committerCarl Hetherington <carl@carlh.net>2011-02-26 11:36:27 +0000
commit7f1e89c64be674a0ac42e87abf12c7f956bbadb4 (patch)
treed2daacfaec37e171f1f7f574c9dceb101920cb36 /libs/ardour/session_state.cc
parente18cebd6d716d5a24960eb0c834db6a22cc2d67f (diff)
Load the tempo map before regions so that MIDI region positions / lengths don't get corrupted (part of #3789).
git-svn-id: svn://localhost/ardour2/branches/3.0@8964 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/session_state.cc')
-rw-r--r--libs/ardour/session_state.cc16
1 files changed, 8 insertions, 8 deletions
diff --git a/libs/ardour/session_state.cc b/libs/ardour/session_state.cc
index 3dd1b5c5eb..102416b2e1 100644
--- a/libs/ardour/session_state.cc
+++ b/libs/ardour/session_state.cc
@@ -1265,7 +1265,7 @@ Session::set_state (const XMLNode& node, int version)
Metadata
Locations
Sources
- AudioRegions
+ Regions
Connections
Routes
RouteGroups
@@ -1331,6 +1331,13 @@ Session::set_state (const XMLNode& node, int version)
goto out;
}
+ if ((child = find_named_node (node, "TempoMap")) == 0) {
+ error << _("Session: XML state has no Tempo Map section") << endmsg;
+ goto out;
+ } else if (_tempo_map->set_state (*child, version)) {
+ goto out;
+ }
+
if ((child = find_named_node (node, "Regions")) == 0) {
error << _("Session: XML state has no Regions section") << endmsg;
goto out;
@@ -1369,13 +1376,6 @@ Session::set_state (const XMLNode& node, int version)
}
}
- if ((child = find_named_node (node, "TempoMap")) == 0) {
- error << _("Session: XML state has no Tempo Map section") << endmsg;
- goto out;
- } else if (_tempo_map->set_state (*child, version)) {
- goto out;
- }
-
if (version < 3000) {
if ((child = find_named_node (node, X_("DiskStreams"))) == 0) {
error << _("Session: XML state has no diskstreams section") << endmsg;