summaryrefslogtreecommitdiff
path: root/libs/ardour/audio_playlist.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2012-05-29 12:54:49 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2012-05-29 12:54:49 +0000
commit71988944739d8daf2fda75ee709fa54af2f2f1f5 (patch)
treea85dd2443d93dab0a161a7438731813ad2624e8a /libs/ardour/audio_playlist.cc
parentb397dafb86ac976e2b80fd222b43e2ea49093360 (diff)
don't reset region fades to default after a playlist op unless the fades used to be part of an xfade and now no longer are (should fix #4893)
git-svn-id: svn://localhost/ardour2/branches/3.0@12476 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/audio_playlist.cc')
-rw-r--r--libs/ardour/audio_playlist.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/libs/ardour/audio_playlist.cc b/libs/ardour/audio_playlist.cc
index 2ebbdd5131..2eb80a403e 100644
--- a/libs/ardour/audio_playlist.cc
+++ b/libs/ardour/audio_playlist.cc
@@ -421,14 +421,18 @@ AudioPlaylist::check_crossfades (Evoral::Range<framepos_t> range)
for (RegionList::iterator i = starts->begin(); i != starts->end(); ++i) {
if (done_start.find (*i) == done_start.end()) {
boost::shared_ptr<AudioRegion> r = boost::dynamic_pointer_cast<AudioRegion> (*i);
- r->set_default_fade_in ();
+ if (r->fade_in_is_xfade()) {
+ r->set_default_fade_in ();
+ }
}
}
for (RegionList::iterator i = ends->begin(); i != ends->end(); ++i) {
if (done_end.find (*i) == done_end.end()) {
boost::shared_ptr<AudioRegion> r = boost::dynamic_pointer_cast<AudioRegion> (*i);
- r->set_default_fade_out ();
+ if (r->fade_out_is_xfade()) {
+ r->set_default_fade_out ();
+ }
}
}
}