diff options
Diffstat (limited to 'libs/ardour/crossfade.cc')
-rw-r--r-- | libs/ardour/crossfade.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/ardour/crossfade.cc b/libs/ardour/crossfade.cc index 67ccea9371..6b0c0a9560 100644 --- a/libs/ardour/crossfade.cc +++ b/libs/ardour/crossfade.cc @@ -717,6 +717,8 @@ Crossfade::get_state () char buf[64]; LocaleGuard lg (X_("POSIX")); + id().print (buf, sizeof (buf)); + node->add_property ("id", buf); _out->id().print (buf, sizeof (buf)); node->add_property ("out", buf); _in->id().print (buf, sizeof (buf)); @@ -774,6 +776,10 @@ Crossfade::set_state (const XMLNode& node, int /*version*/) PropertyChange what_changed; framepos_t val; + if ((prop = node.property (X_("id")))) { + _id = prop->value(); + } + if ((prop = node.property ("position")) != 0) { sscanf (prop->value().c_str(), "%" PRId64, &val); if (val != _position) { |