From be6249229e7c7fd0f8472b9e581bc01cad90468f Mon Sep 17 00:00:00 2001 From: Nikolaus Gullotta Date: Mon, 10 Jun 2019 13:01:25 -0500 Subject: [PATCH] we need to copy the top level playlist with an easy work around... alternate playlists will be harder --- libs/ardour/mixer_snapshot.cc | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/libs/ardour/mixer_snapshot.cc b/libs/ardour/mixer_snapshot.cc index 11746f2742..0307ebed07 100644 --- a/libs/ardour/mixer_snapshot.cc +++ b/libs/ardour/mixer_snapshot.cc @@ -324,10 +324,17 @@ void MixerSnapshot::recall() PresentationInfo::order_t order = route->presentation_info().order(); string name = route->name(); XMLNode& node = sanitize_node(state.node); - PlaylistDisposition disp = NewPlaylist; + PlaylistDisposition disp = CopyPlaylist; + + //we need the route's playlist id before it dissapears + XMLNode& route_node = route->get_state(); + string playlist_id; + route_node.get_property (X_("audio-playlist"), playlist_id); + + node.set_property(X_("audio-playlist"), playlist_id); _session->remove_route(route); - route = 0; //explicitly drop referenc + route = 0; //explicitly drop reference RouteList rl = _session->new_route_from_template(1, order, node, name, disp); boost::shared_ptr route = rl.front();