prepare "delete all playlists" cleanup option
authorRobin Gareus <robin@gareus.org>
Sat, 21 Nov 2015 20:11:45 +0000 (21:11 +0100)
committerRobin Gareus <robin@gareus.org>
Sat, 21 Nov 2015 20:11:45 +0000 (21:11 +0100)
libs/ardour/session_playlists.cc

index 8fdafad09dfd95d9e56fda7828cdb830b3bfe9ee..cc2f1b25abf06927a74856f763bd2c59b514dc42 100644 (file)
@@ -333,15 +333,28 @@ SessionPlaylists::maybe_delete_unused (boost::function<int(boost::shared_ptr<Pla
 {
        vector<boost::shared_ptr<Playlist> > playlists_tbd;
 
+       bool delete_all = false;
+
        for (List::iterator x = unused_playlists.begin(); x != unused_playlists.end(); ++x) {
+               if (delete_all) {
+                       playlists_tbd.push_back (*x);
+                       continue;
+               }
 
                int status = ask (*x);
 
                switch (status) {
                case -1:
+                       // abort
                        return true;
 
-               case 0:
+               case 2:
+                       // delete this and all later
+                       delete_all = true;
+                       // no break;
+
+               case 1:
+                       // delete this
                        playlists_tbd.push_back (*x);
                        break;