diff options
Diffstat (limited to 'libs/ardour/playlist.cc')
-rw-r--r-- | libs/ardour/playlist.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/libs/ardour/playlist.cc b/libs/ardour/playlist.cc index 3af4d22430..c71d53deca 100644 --- a/libs/ardour/playlist.cc +++ b/libs/ardour/playlist.cc @@ -131,16 +131,18 @@ RegionListProperty::copy_for_history () const } void -RegionListProperty::diff (PropertyList& before, PropertyList& after) const +RegionListProperty::diff (PropertyList& undo, PropertyList& redo) const { if (changed()) { + /* list of the removed/added regions since clear_history() was last called */ RegionListProperty* a = copy_for_history (); - RegionListProperty* b = copy_for_history (); + /* the same list, but with removed/added lists swapped (for undo purposes) */ + RegionListProperty* b = copy_for_history (); b->invert_changes (); - before.add (b); - after.add (a); + undo.add (b); + redo.add (a); } } |