diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2006-10-21 05:12:11 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2006-10-21 05:12:11 +0000 |
commit | fbb9576d4047c03276cc2e1b750465c3b0371c6c (patch) | |
tree | fb0ed6838c8565a7cdafcd5da63f41d7b87989a8 /libs/ardour/playlist.cc | |
parent | 273d9fa8d6fc7fb0c16f805933040ed5962ff3d5 (diff) |
various fixes related to lifetime management and xfades in particular. lots and lots and lots of debugging output, but sampo can test startup now. shutdown will still crash, but for a new reason.
git-svn-id: svn://localhost/ardour2/trunk@998 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/playlist.cc')
-rw-r--r-- | libs/ardour/playlist.cc | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/libs/ardour/playlist.cc b/libs/ardour/playlist.cc index ef5fe276bb..87eed692b6 100644 --- a/libs/ardour/playlist.cc +++ b/libs/ardour/playlist.cc @@ -99,19 +99,19 @@ Playlist::Playlist (const Playlist& other, string namestr, bool hide) RegionList tmp; other.copy_regions (tmp); - in_set_state = true; + in_set_state++; for (list<boost::shared_ptr<Region> >::iterator x = tmp.begin(); x != tmp.end(); ++x) { add_region_internal( (*x), (*x)->position() ); } - in_set_state = false; + in_set_state--; _splicing = other._splicing; _nudging = other._nudging; _edit_mode = other._edit_mode; - in_set_state = false; + in_set_state = 0; in_flush = false; in_partition = false; subcnt = 0; @@ -230,7 +230,7 @@ Playlist::init (bool hide) _hidden = hide; _splicing = false; _nudging = false; - in_set_state = false; + in_set_state = 0; _edit_mode = Config->get_edit_mode(); in_flush = false; in_partition = false; @@ -1321,10 +1321,10 @@ Playlist::set_state (const XMLNode& node) boost::shared_ptr<Region> region; string region_name; - in_set_state = true; + in_set_state++; if (node.name() != "Playlist") { - in_set_state = false; + in_set_state--; return -1; } @@ -1394,10 +1394,10 @@ Playlist::set_state (const XMLNode& node) notify_modified (); - in_set_state = false; - thaw (); + in_set_state--; + return 0; } |