diff options
author | Jesse Chappell <jesse@essej.net> | 2006-01-19 18:00:07 +0000 |
---|---|---|
committer | Jesse Chappell <jesse@essej.net> | 2006-01-19 18:00:07 +0000 |
commit | 5eb4a701f3c233b0f49b581b3350eb6fdf3c1012 (patch) | |
tree | f452a63e1e9366af9414eafb29af7d6e393fa5a4 /libs/ardour/crossfade.cc | |
parent | 6ef5c8da56800bbce1c23a9ea51c9a1646d5887f (diff) |
fixed various xfade and undo and updating issues. plugins no longer run on deactivated routes/tracks. other region copy/trim undo fixes
git-svn-id: svn://localhost/trunk/ardour2@279 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/crossfade.cc')
-rw-r--r-- | libs/ardour/crossfade.cc | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/libs/ardour/crossfade.cc b/libs/ardour/crossfade.cc index 67b6a182b4..8aed204d71 100644 --- a/libs/ardour/crossfade.cc +++ b/libs/ardour/crossfade.cc @@ -146,17 +146,19 @@ Crossfade::Crossfade (const Playlist& playlist, XMLNode& node) << endmsg; throw failed_constructor(); } - + if ((_out = dynamic_cast<AudioRegion*> (r)) == 0) { throw failed_constructor(); } _length = 0; - initialize(); + initialize(false); if (set_state (node)) { throw failed_constructor(); } + + save_state ("initial"); } Crossfade::~Crossfade () @@ -167,7 +169,7 @@ Crossfade::~Crossfade () } void -Crossfade::initialize () +Crossfade::initialize (bool savestate) { _in_update = false; @@ -198,8 +200,10 @@ Crossfade::initialize () // _out->StateChanged.connect (slot (*this, &Crossfade::member_changed)); overlap_type = _in->coverage (_out->position(), _out->last_frame()); - - save_state ("initial"); + + if (savestate) { + save_state ("initial"); + } } int |