X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fexport_filename.cc;h=945af25dee12b2adcb73e27d5415c4b1539b5181;hb=949a45b748546c125e69d794b0f73565f376ab60;hp=f7fe22c3b48c5a37b72435f55f2f6ad5305033bf;hpb=2b9421fd391efcddde0be3397cb66e19b744a155;p=ardour.git diff --git a/libs/ardour/export_filename.cc b/libs/ardour/export_filename.cc index f7fe22c3b4..945af25dee 100644 --- a/libs/ardour/export_filename.cc +++ b/libs/ardour/export_filename.cc @@ -56,7 +56,9 @@ ExportFilename::ExportFilename (Session & session) : include_time (false), include_date (false), session (session), - revision (1) + revision (1), + date_format (D_None), + time_format (T_None) { time_t rawtime; std::time (&rawtime); @@ -64,9 +66,14 @@ 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"); + /* Legacy sessions used Session instant.xml for this */ + if (!extra_node) { + session.instant_xml ("ExportFilename"); + } + + if (extra_node) { + set_state (*extra_node); } } @@ -87,9 +94,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 +151,13 @@ 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"); + /* 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()); }