Make sure that regions created during AsTrack and AsTapeTrack imports
authorCarl Hetherington <carl@carlh.net>
Sat, 9 Jun 2012 13:36:02 +0000 (13:36 +0000)
committerCarl Hetherington <carl@carlh.net>
Sat, 9 Jun 2012 13:36:02 +0000 (13:36 +0000)
are added to the master region list, otherwise if they are subsequently
deleted they will be lost.  This causes the undo record to go wrong
as it references a non-existant region.  May have been the cause of
bug #4919.

git-svn-id: svn://localhost/ardour2/branches/3.0@12626 d708f5d6-7413-0410-9779-e7cbd77b26cf

gtk2_ardour/editor_audio_import.cc

index aaf587a464c93aabcba63594a990aaa67ff0fb1a..46cd59dcd5fcf88ed8311992d70f479dfaa47ce6 100644 (file)
@@ -945,7 +945,7 @@ Editor::finish_bringing_in_material (boost::shared_ptr<Region> region, uint32_t
                }
 
                boost::shared_ptr<Playlist> playlist = existing_track->playlist();
                }
 
                boost::shared_ptr<Playlist> playlist = existing_track->playlist();
-               boost::shared_ptr<Region> copy (RegionFactory::create (region));
+               boost::shared_ptr<Region> copy (RegionFactory::create (region, true));
                begin_reversible_command (Operations::insert_file);
                playlist->clear_changes ();
                playlist->add_region (copy, pos);
                begin_reversible_command (Operations::insert_file);
                playlist->clear_changes ();
                playlist->add_region (copy, pos);
@@ -963,7 +963,7 @@ Editor::finish_bringing_in_material (boost::shared_ptr<Region> region, uint32_t
                list<boost::shared_ptr<AudioTrack> > at (_session->new_audio_track (in_chans, out_chans, Destructive));
                if (!at.empty()) {
                        boost::shared_ptr<Playlist> playlist = at.front()->playlist();
                list<boost::shared_ptr<AudioTrack> > at (_session->new_audio_track (in_chans, out_chans, Destructive));
                if (!at.empty()) {
                        boost::shared_ptr<Playlist> playlist = at.front()->playlist();
-                       boost::shared_ptr<Region> copy (RegionFactory::create (region));
+                       boost::shared_ptr<Region> copy (RegionFactory::create (region, true));
                        begin_reversible_command (Operations::insert_file);
                        playlist->clear_changes ();
                        playlist->add_region (copy, pos);
                        begin_reversible_command (Operations::insert_file);
                        playlist->clear_changes ();
                        playlist->add_region (copy, pos);