diff --git a/src/WaveClip.h b/src/WaveClip.h index 4fc577647..1c5ea9eed 100644 --- a/src/WaveClip.h +++ b/src/WaveClip.h @@ -119,9 +119,9 @@ public: class WaveClip; // Array of pointers that assume ownership -using WaveClipHolder = movable_ptr< WaveClip >; +using WaveClipHolder = std::shared_ptr< WaveClip >; using WaveClipHolders = std::vector < WaveClipHolder >; -using WaveClipConstHolders = std::vector < movable_ptr< const WaveClip > >; +using WaveClipConstHolders = std::vector < std::shared_ptr< const WaveClip > >; // Temporary arrays of mere pointers using WaveClipPointers = std::vector < WaveClip* >; diff --git a/src/WaveTrack.cpp b/src/WaveTrack.cpp index a65baa86b..d2c877be5 100644 --- a/src/WaveTrack.cpp +++ b/src/WaveTrack.cpp @@ -1020,7 +1020,7 @@ namespace } } -movable_ptr<WaveClip> WaveTrack::RemoveAndReturnClip(WaveClip* clip) +std::shared_ptr<WaveClip> WaveTrack::RemoveAndReturnClip(WaveClip* clip) { // Be clear about who owns the clip!! auto it = FindClip(mClips, clip); @@ -1033,7 +1033,7 @@ movable_ptr<WaveClip> WaveTrack::RemoveAndReturnClip(WaveClip* clip) return {}; } -void WaveTrack::AddClip(movable_ptr<WaveClip> &&clip) +void WaveTrack::AddClip(std::shared_ptr<WaveClip> &&clip) { // Uncomment the following line after we correct the problem of zero-length clips //if (CanInsertClip(clip)) diff --git a/src/WaveTrack.h b/src/WaveTrack.h index d2854823f..15c183462 100644 --- a/src/WaveTrack.h +++ b/src/WaveTrack.h @@ -495,10 +495,10 @@ class AUDACITY_DLL_API WaveTrack final : public PlayableTrack { // Remove the clip from the track and return a SMART pointer to it. // You assume responsibility for its memory! - movable_ptr<WaveClip> RemoveAndReturnClip(WaveClip* clip); + std::shared_ptr<WaveClip> RemoveAndReturnClip(WaveClip* clip); // Append a clip to the track - void AddClip(movable_ptr<WaveClip> &&clip); // Call using std::move + void AddClip(std::shared_ptr<WaveClip> &&clip); // Call using std::move // Merge two clips, that is append data from clip2 to clip1, // then remove clip2 from track.