diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2006-11-06 17:45:00 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2006-11-06 17:45:00 +0000 |
commit | 4f5af6d062255f7fd21e2550655294c8f04d5a50 (patch) | |
tree | 3aece28e0f46bbb3d6b640aaea2742d8eb603a04 | |
parent | 0673a5d93ee617185c0eb4b60a062dc9eb19f1a2 (diff) |
maybe fix race condition for peaks; fix % appearing in region names; allow crossfades to work by fixing erroneous variable increment
git-svn-id: svn://localhost/ardour2/trunk@1077 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r-- | gtk2_ardour/audio_region_view.cc | 4 | ||||
-rw-r--r-- | libs/ardour/audio_diskstream.cc | 8 | ||||
-rw-r--r-- | libs/ardour/audio_playlist.cc | 2 |
3 files changed, 7 insertions, 7 deletions
diff --git a/gtk2_ardour/audio_region_view.cc b/gtk2_ardour/audio_region_view.cc index 6de409b7ec..a7c2afacb2 100644 --- a/gtk2_ardour/audio_region_view.cc +++ b/gtk2_ardour/audio_region_view.cc @@ -864,10 +864,6 @@ void AudioRegionView::peaks_ready_handler (uint32_t which) { Gtkmm2ext::UI::instance()->call_slot (bind (mem_fun(*this, &AudioRegionView::create_one_wave), which, false)); - if (!waves.empty()) { - /* all waves created, don't hook into peaks ready anymore */ - data_ready_connection.disconnect (); - } } void diff --git a/libs/ardour/audio_diskstream.cc b/libs/ardour/audio_diskstream.cc index 9bd690c23a..ad9fec2d41 100644 --- a/libs/ardour/audio_diskstream.cc +++ b/libs/ardour/audio_diskstream.cc @@ -1535,6 +1535,9 @@ AudioDiskstream::transport_stopped (struct tm& when, time_t twhen, bool abort_ca } else { + string whole_file_region_name; + whole_file_region_name = region_name_from_path (channels[0].write_source->name()); + /* Register a new region with the Session that describes the entire source. Do this first so that any sub-regions will obviously be @@ -1543,7 +1546,7 @@ AudioDiskstream::transport_stopped (struct tm& when, time_t twhen, bool abort_ca try { boost::shared_ptr<Region> rx (RegionFactory::create (srcs, channels[0].write_source->last_capture_start_frame(), total_capture, - region_name_from_path (channels[0].write_source->name()), + whole_file_region_name, 0, AudioRegion::Flag (AudioRegion::DefaultFlags|AudioRegion::Automatic|AudioRegion::WholeFile))); region = boost::dynamic_pointer_cast<AudioRegion> (rx); @@ -1566,7 +1569,8 @@ AudioDiskstream::transport_stopped (struct tm& when, time_t twhen, bool abort_ca for (buffer_position = channels[0].write_source->last_capture_start_frame(), ci = capture_info.begin(); ci != capture_info.end(); ++ci) { string region_name; - _session.region_name (region_name, channels[0].write_source->name(), false); + + _session.region_name (region_name, whole_file_region_name, false); // cerr << _name << ": based on ci of " << (*ci)->start << " for " << (*ci)->frames << " add region " << region_name << endl; diff --git a/libs/ardour/audio_playlist.cc b/libs/ardour/audio_playlist.cc index 19609da2a4..290907746b 100644 --- a/libs/ardour/audio_playlist.cc +++ b/libs/ardour/audio_playlist.cc @@ -531,7 +531,7 @@ AudioPlaylist::set_state (const XMLNode& node) } thaw (); - in_set_state++; + in_set_state--; return 0; } |