From c49c17ffff4b977b2477043332e4989316964815 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Tue, 17 Dec 2019 22:54:55 +0100 Subject: Cont'd work on Playlists import from old 2.x sessions v2.0.0 sessions don't save empty playlists. So missing playlists for a give diskstream are fine. Just use a default empty one. --- libs/ardour/session_state.cc | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'libs/ardour/session_state.cc') diff --git a/libs/ardour/session_state.cc b/libs/ardour/session_state.cc index 9d56e4097b..e2cda7dd05 100644 --- a/libs/ardour/session_state.cc +++ b/libs/ardour/session_state.cc @@ -1963,8 +1963,7 @@ Session::XMLRouteFactory_2X (const XMLNode& node, int version) boost::shared_ptr pl = playlists()->by_name (playlist_name); if (playlist_name.empty () || !pl) { - error << _("Could not find diskstream for route") << endmsg; - return boost::shared_ptr (); + warning << string_compose (_("Could not find diskstream for diskream-id: '%1', playlist: '%2'"), ds_prop->value (), playlist_name) << endmsg; } boost::shared_ptr track; @@ -1979,14 +1978,18 @@ Session::XMLRouteFactory_2X (const XMLNode& node, int version) return ret; } - track->use_playlist (DataType::AUDIO, pl); + if (pl) { + track->use_playlist (DataType::AUDIO, pl); + } if (track->set_state (node, version)) { return ret; } - pl->set_orig_track_id (track->id()); - playlists()->update_orig_2X (ds_id, track->id()); + if (pl) { + pl->set_orig_track_id (track->id()); + playlists()->update_orig_2X (ds_id, track->id()); + } BOOST_MARK_TRACK (track); ret = track; -- cgit v1.2.3