diff options
author | Carl Hetherington <carl@carlh.net> | 2012-01-04 13:56:09 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2012-01-04 13:56:09 +0000 |
commit | b9a9d8d0471c28e80e350d6e49cde965f87b986b (patch) | |
tree | 2ee216de7cc2b400e9dd2aabaaa5d451e1f33141 /libs/ardour/audio_playlist.cc | |
parent | 365a8f7f14bdc653bb012b10be8938a8eaaa69ce (diff) |
Use a few shared_ptrs to make things slightly neater.
git-svn-id: svn://localhost/ardour2/branches/3.0@11156 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/audio_playlist.cc')
-rw-r--r-- | libs/ardour/audio_playlist.cc | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/libs/ardour/audio_playlist.cc b/libs/ardour/audio_playlist.cc index fca042e2c5..56f2c4fe83 100644 --- a/libs/ardour/audio_playlist.cc +++ b/libs/ardour/audio_playlist.cc @@ -289,10 +289,9 @@ AudioPlaylist::read (Sample *buf, Sample *mixdown_buffer, float *gain_buffer, fr framepos_t const end = start + cnt - 1; - RegionList* rlist = regions_to_read (start, start+cnt); + boost::shared_ptr<RegionList> rlist = regions_to_read (start, start+cnt); if (rlist->empty()) { - delete rlist; return cnt; } @@ -353,7 +352,6 @@ AudioPlaylist::read (Sample *buf, Sample *mixdown_buffer, float *gain_buffer, fr } } - delete rlist; return ret; } @@ -492,7 +490,7 @@ AudioPlaylist::check_dependents (boost::shared_ptr<Region> r, bool norefresh) boost::shared_ptr<AudioRegion> top; boost::shared_ptr<AudioRegion> bottom; boost::shared_ptr<Crossfade> xfade; - RegionList* touched_regions = 0; + boost::shared_ptr<RegionList> touched_regions; if (in_set_state || in_partition) { return; @@ -543,8 +541,7 @@ AudioPlaylist::check_dependents (boost::shared_ptr<Region> r, bool norefresh) OverlapType c = top->coverage (bottom->position(), bottom->last_frame()); - delete touched_regions; - touched_regions = 0; + touched_regions.reset (); try { framecnt_t xfade_length; @@ -657,8 +654,6 @@ AudioPlaylist::check_dependents (boost::shared_ptr<Region> r, bool norefresh) } } - - delete touched_regions; } void |