summaryrefslogtreecommitdiff
path: root/libs/ardour/playlist.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2016-12-13 02:33:07 +0100
committerRobin Gareus <robin@gareus.org>2016-12-13 02:33:07 +0100
commit989f934c3825fb600decc467770fea6f802a60b1 (patch)
tree347b6ae91c66aecec695cf1a2545bb927656e13d /libs/ardour/playlist.cc
parent8276a4658a723c54bbbf941375d2e27416e82043 (diff)
Fix layered-record undo, include changes to existing region(s)
Diffstat (limited to 'libs/ardour/playlist.cc')
-rw-r--r--libs/ardour/playlist.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/libs/ardour/playlist.cc b/libs/ardour/playlist.cc
index 7b0f69e2ab..cc6c0d3f40 100644
--- a/libs/ardour/playlist.cc
+++ b/libs/ardour/playlist.cc
@@ -680,6 +680,7 @@ Playlist::flush_notifications (bool from_undo)
partition_internal (pos - 1, (pos + region->length()), true, thawlist);
for (RegionList::iterator i = thawlist.begin(); i != thawlist.end(); ++i) {
(*i)->resume_property_changes ();
+ _session.add_command (new StatefulDiffCommand (*i));
}
}
@@ -1006,6 +1007,7 @@ Playlist::flush_notifications (bool from_undo)
/* "front" ***** */
+ current->clear_changes ();
current->suspend_property_changes ();
thawlist.push_back (current);
current->cut_end (pos2 - 1);
@@ -1046,6 +1048,7 @@ Playlist::flush_notifications (bool from_undo)
/* front ****** */
+ current->clear_changes ();
current->suspend_property_changes ();
thawlist.push_back (current);
current->cut_end (pos2 - 1);
@@ -1090,6 +1093,7 @@ Playlist::flush_notifications (bool from_undo)
/* end */
+ current->clear_changes ();
current->suspend_property_changes ();
thawlist.push_back (current);
current->trim_front (pos3);