diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2010-05-05 14:54:28 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2010-05-05 14:54:28 +0000 |
commit | a0ad7177f6989301f695c90eea3c4d0fbc0d262a (patch) | |
tree | ac67787bfc0ac90f201360b25a20de8c01c4dcc2 | |
parent | 21bd527ce32b66e337a41c8f89f9dc804a1dd8e9 (diff) |
when splitting to mono regions, don't make the new mono regions children of existing regions in the list (involves changingthe definition of source-equivalent, but to its correct and intended meaning)
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@7063 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r-- | libs/ardour/audioregion.cc | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libs/ardour/audioregion.cc b/libs/ardour/audioregion.cc index c329a26b1c..0eff9a2e3d 100644 --- a/libs/ardour/audioregion.cc +++ b/libs/ardour/audioregion.cc @@ -1272,11 +1272,17 @@ AudioRegion::source_equivalent (boost::shared_ptr<const Region> o) const { boost::shared_ptr<const AudioRegion> other = boost::dynamic_pointer_cast<const AudioRegion>(o); - if (!other) + if (!other) { return false; + } SourceList::const_iterator i; SourceList::const_iterator io; + + if ((sources.size() != other->sources.size()) || + (master_sources.size() != other->master_sources.size())) { + return false; + } for (i = sources.begin(), io = other->sources.begin(); i != sources.end() && io != other->sources.end(); ++i, ++io) { if ((*i)->id() != (*io)->id()) { |