summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2010-08-20 22:36:35 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2010-08-20 22:36:35 +0000
commitb2bf4eee3d9ca63a34415c75e877b8c97d6b5f13 (patch)
treec2e3aeec94abfbbd976609bd50559c7a5aca9640 /libs
parentc2e491b8fcadba0da7ab8415a6357cfba88a431d (diff)
2.X commits up to and including 7519
git-svn-id: svn://localhost/ardour2/branches/3.0@7661 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs')
-rw-r--r--libs/ardour/audioregion.cc2
-rw-r--r--libs/ardour/region.cc5
-rw-r--r--libs/ardour/session_transport.cc1
-rw-r--r--libs/pbd/undo.cc1
4 files changed, 8 insertions, 1 deletions
diff --git a/libs/ardour/audioregion.cc b/libs/ardour/audioregion.cc
index 992ae7fab2..7212cf8e4c 100644
--- a/libs/ardour/audioregion.cc
+++ b/libs/ardour/audioregion.cc
@@ -522,7 +522,7 @@ AudioRegion::_read_at (const SourceList& /*srcs*/, framecnt_t limit,
}
}
- if (!opaque()) {
+ if (!opaque() && (buf != mixdown_buffer)) {
/* gack. the things we do for users.
*/
diff --git a/libs/ardour/region.cc b/libs/ardour/region.cc
index 234dddcc45..65f7d6fedc 100644
--- a/libs/ardour/region.cc
+++ b/libs/ardour/region.cc
@@ -1404,6 +1404,11 @@ Region::source_equivalent (boost::shared_ptr<const Region> other) const
{
if (!other)
return false;
+
+ if ((_sources.size() != other->_sources.size()) ||
+ (_master_sources.size() != other->_master_sources.size())) {
+ return false;
+ }
SourceList::const_iterator i;
SourceList::const_iterator io;
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc
index 8d885d686f..bc4ef8decc 100644
--- a/libs/ardour/session_transport.cc
+++ b/libs/ardour/session_transport.cc
@@ -1135,6 +1135,7 @@ Session::start_transport ()
if (tr) {
tr->realtime_set_speed (tr->speed(), true);
}
+ (*i)->automation_snapshot (_transport_frame, true);
}
Timecode::Time time;
diff --git a/libs/pbd/undo.cc b/libs/pbd/undo.cc
index 120f62c351..fd7c4d5fb8 100644
--- a/libs/pbd/undo.cc
+++ b/libs/pbd/undo.cc
@@ -41,6 +41,7 @@ UndoTransaction::UndoTransaction (const UndoTransaction& rhs)
: Command(rhs._name)
, _clearing(false)
{
+ _timestamp = rhs._timestamp;
clear ();
actions.insert(actions.end(),rhs.actions.begin(),rhs.actions.end());
}