From 199dce57f35014189f21c76fff32e0752bcc8c15 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Wed, 16 Aug 2006 20:22:44 +0000 Subject: make adding multiple tracks more efficient (a *lot* more efficient) git-svn-id: svn://localhost/ardour2/trunk@834 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/editor_audio_import.cc | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'gtk2_ardour/editor_audio_import.cc') diff --git a/gtk2_ardour/editor_audio_import.cc b/gtk2_ardour/editor_audio_import.cc index b6fdefa4d3..4128348e3a 100644 --- a/gtk2_ardour/editor_audio_import.cc +++ b/gtk2_ardour/editor_audio_import.cc @@ -332,17 +332,21 @@ Editor::finish_bringing_in_audio (AudioRegion& region, uint32_t in_chans, uint32 case ImportAsTrack: { - boost::shared_ptr at (session->new_audio_track (in_chans, out_chans, Normal)); - copy = new AudioRegion (region); - at->diskstream()->playlist()->add_region (*copy, pos); + vector > at (session->new_audio_track (in_chans, out_chans, Normal, 1)); + if (!at.empty()) { + copy = new AudioRegion (region); + at.front()->diskstream()->playlist()->add_region (*copy, pos); + } break; } case ImportAsTapeTrack: { - boost::shared_ptr at (session->new_audio_track (in_chans, out_chans, Destructive)); - copy = new AudioRegion (region); - at->diskstream()->playlist()->add_region (*copy, pos); + vector > at (session->new_audio_track (in_chans, out_chans, Destructive)); + if (!at.empty()) { + copy = new AudioRegion (region); + at.front()->diskstream()->playlist()->add_region (*copy, pos); + } break; } } -- cgit v1.2.3