From 34bf7457c67a60606b1304c1ff76082f7fec37c9 Mon Sep 17 00:00:00 2001 From: nick_m Date: Thu, 14 Aug 2014 02:52:42 +1000 Subject: [PATCH 1/2] Move ExportProfile xml from Session instant.xml to session file. --- libs/ardour/export_filename.cc | 16 ++++++++-------- libs/ardour/export_profile_manager.cc | 12 ++++++------ 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/libs/ardour/export_filename.cc b/libs/ardour/export_filename.cc index f7fe22c3b4..aac96f3ffd 100644 --- a/libs/ardour/export_filename.cc +++ b/libs/ardour/export_filename.cc @@ -64,9 +64,9 @@ ExportFilename::ExportFilename (Session & session) : folder = session.session_directory().export_path(); - XMLNode * instant_node = session.instant_xml ("ExportFilename"); - if (instant_node) { - set_state (*instant_node); + XMLNode * extra_node = session.extra_xml ("ExportFilename"); + if (extra_node) { + set_state (*extra_node); } } @@ -87,9 +87,9 @@ ExportFilename::get_state () add_field (node, "time", include_time, enum_2_string (time_format)); add_field (node, "date", include_date, enum_2_string (date_format)); - XMLNode * instant_node = new XMLNode ("ExportRevision"); - instant_node->add_property ("revision", to_string (revision, std::dec)); - session.add_instant_xml (*instant_node); + XMLNode * extra_node = new XMLNode ("ExportRevision"); + extra_node->add_property ("revision", to_string (revision, std::dec)); + session.add_extra_xml (*extra_node); return *node; } @@ -144,8 +144,8 @@ ExportFilename::set_state (const XMLNode & node) include_date = pair.first; date_format = (DateFormat) string_2_enum (pair.second, date_format); - XMLNode * instant_node = session.instant_xml ("ExportRevision"); - if (instant_node && (prop = instant_node->property ("revision"))) { + XMLNode * extra_node = session.extra_xml ("ExportRevision"); + if (extra_node && (prop = extra_node->property ("revision"))) { revision = atoi (prop->value()); } diff --git a/libs/ardour/export_profile_manager.cc b/libs/ardour/export_profile_manager.cc index 4a10d3dfa8..b9bc168864 100644 --- a/libs/ardour/export_profile_manager.cc +++ b/libs/ardour/export_profile_manager.cc @@ -114,17 +114,17 @@ ExportProfileManager::ExportProfileManager (Session & s, ExportType type) ExportProfileManager::~ExportProfileManager () { - XMLNode * instant_xml (new XMLNode (xml_node_name)); - serialize_profile (*instant_xml); - session.add_instant_xml (*instant_xml, false); + XMLNode * extra_xml (new XMLNode (xml_node_name)); + serialize_profile (*extra_xml); + session.add_extra_xml (*extra_xml); } void ExportProfileManager::load_profile () { - XMLNode * instant_node = session.instant_xml (xml_node_name); - if (instant_node) { - set_state (*instant_node); + XMLNode * extra_node = session.extra_xml (xml_node_name); + if (extra_node) { + set_state (*extra_node); } else { XMLNode empty_node (xml_node_name); set_state (empty_node); From 7099f0ec4e1fe3909cc829dae72897d7ee836326 Mon Sep 17 00:00:00 2001 From: nick_m Date: Thu, 14 Aug 2014 03:19:40 +1000 Subject: [PATCH 2/2] Add backwards compatibility for instant.xml changes. --- libs/ardour/export_filename.cc | 10 ++++++++++ libs/ardour/export_profile_manager.cc | 5 +++++ 2 files changed, 15 insertions(+) diff --git a/libs/ardour/export_filename.cc b/libs/ardour/export_filename.cc index aac96f3ffd..9a05afa5ba 100644 --- a/libs/ardour/export_filename.cc +++ b/libs/ardour/export_filename.cc @@ -65,6 +65,11 @@ ExportFilename::ExportFilename (Session & session) : folder = session.session_directory().export_path(); XMLNode * extra_node = session.extra_xml ("ExportFilename"); + /* Legacy sessions used Session instant.xml for this */ + if (!extra_node) { + session.instant_xml ("ExportFilename"); + } + if (extra_node) { set_state (*extra_node); } @@ -145,6 +150,11 @@ ExportFilename::set_state (const XMLNode & node) date_format = (DateFormat) string_2_enum (pair.second, date_format); XMLNode * extra_node = session.extra_xml ("ExportRevision"); + /* Legacy sessions used Session instant.xml for this */ + if (!extra_node) { + extra_node = session.instant_xml ("ExportRevision"); + } + if (extra_node && (prop = extra_node->property ("revision"))) { revision = atoi (prop->value()); } diff --git a/libs/ardour/export_profile_manager.cc b/libs/ardour/export_profile_manager.cc index b9bc168864..c2d6cb087a 100644 --- a/libs/ardour/export_profile_manager.cc +++ b/libs/ardour/export_profile_manager.cc @@ -123,6 +123,11 @@ void ExportProfileManager::load_profile () { XMLNode * extra_node = session.extra_xml (xml_node_name); + /* Legacy sessions used Session instant.xml for this */ + if (!extra_node) { + extra_node = session.instant_xml (xml_node_name); + } + if (extra_node) { set_state (*extra_node); } else {