summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_timefx.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2006-08-25 01:07:15 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2006-08-25 01:07:15 +0000
commitce234f363e95c38fc92728e520bf5ba240a89aa7 (patch)
tree96ce8c4734bdd564ec1f2ad0c36bc32f0b108204 /gtk2_ardour/editor_timefx.cc
parent7e95f29ce95edf01d6d451f96fae03f3d3451ff8 (diff)
use shared_ptr<> for all region handling
git-svn-id: svn://localhost/ardour2/trunk@852 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_timefx.cc')
-rw-r--r--gtk2_ardour/editor_timefx.cc12
1 files changed, 5 insertions, 7 deletions
diff --git a/gtk2_ardour/editor_timefx.cc b/gtk2_ardour/editor_timefx.cc
index caa9698b8c..188960c962 100644
--- a/gtk2_ardour/editor_timefx.cc
+++ b/gtk2_ardour/editor_timefx.cc
@@ -160,21 +160,18 @@ Editor::do_timestretch (TimeStretchDialog& dialog)
{
Track* t;
Playlist* playlist;
- Region* new_region;
-
+ boost::shared_ptr<Region> new_region;
for (RegionSelection::iterator i = dialog.regions.begin(); i != dialog.regions.end(); ) {
AudioRegionView* arv = dynamic_cast<AudioRegionView*>(*i);
if (!arv)
continue;
- AudioRegion& region (arv->audio_region());
+ boost::shared_ptr<AudioRegion> region (arv->audio_region());
TimeAxisView* tv = &(arv->get_time_axis_view());
RouteTimeAxisView* rtv;
RegionSelection::iterator tmp;
- cerr << "stretch " << region.name() << endl;
-
tmp = i;
++tmp;
@@ -193,7 +190,7 @@ Editor::do_timestretch (TimeStretchDialog& dialog)
continue;
}
- dialog.request.region = &region;
+ dialog.request.region = region;
if (!dialog.request.running) {
/* we were cancelled */
@@ -208,7 +205,7 @@ Editor::do_timestretch (TimeStretchDialog& dialog)
}
XMLNode &before = playlist->get_state();
- playlist->replace_region (region, *new_region, region.position());
+ playlist->replace_region (region, new_region, region->position());
XMLNode &after = playlist->get_state();
session->add_command (new MementoCommand<Playlist>(*playlist, &before, &after));
@@ -217,6 +214,7 @@ Editor::do_timestretch (TimeStretchDialog& dialog)
dialog.status = 0;
dialog.request.running = false;
+ dialog.request.region.reset ();
}
void*