diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2016-07-12 11:19:15 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2016-07-12 11:19:49 -0400 |
commit | 472ef8c55cc976a581721392ffc1e3a2209ad1fe (patch) | |
tree | adc8e73e1fafd16c64f4409f773a2ab2b6617ec6 /libs/ardour/session_state.cc | |
parent | 49fbb6fa153e5ff39bedccaa5d4ad2d0b6ed573e (diff) |
once the user has explicitly set the session range end, playlist/range changes do not move it.
The user may drag the marker, edit in the Location UI, or use nudge, to set the end
Diffstat (limited to 'libs/ardour/session_state.cc')
-rw-r--r-- | libs/ardour/session_state.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/ardour/session_state.cc b/libs/ardour/session_state.cc index 752c8d03c9..1aafd7118b 100644 --- a/libs/ardour/session_state.cc +++ b/libs/ardour/session_state.cc @@ -1095,6 +1095,8 @@ Session::state (bool full_state) } } + node->add_property ("end-is-free", _session_range_end_is_free ? X_("yes") : X_("no")); + /* save the ID counter */ snprintf (buf, sizeof (buf), "%" PRIu64, ID::counter()); @@ -1358,6 +1360,10 @@ Session::set_state (const XMLNode& node, int version) setup_raid_path(_session_dir->root_path()); + if ((prop = node.property (X_("end-is-free"))) != 0) { + _session_range_end_is_free = string_is_affirmative (prop->value()); + } + if ((prop = node.property (X_("id-counter"))) != 0) { uint64_t x; sscanf (prop->value().c_str(), "%" PRIu64, &x); |