mirror of
https://github.com/Ardour/ardour.git
synced 2026-01-15 18:06:06 +01:00
backports of 10318, 10380, 10403-10405. Fixes a crash in opening sessions and several leak fixes
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@10411 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
85d34e80bf
commit
df5b171c2a
5 changed files with 25 additions and 15 deletions
|
|
@ -410,6 +410,10 @@ ARDOUR_UI::~ARDOUR_UI ()
|
|||
if (new_session_dialog) {
|
||||
delete new_session_dialog;
|
||||
}
|
||||
|
||||
if (splash) {
|
||||
delete splash;
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
|||
|
|
@ -72,6 +72,9 @@ AudioStreamView::AudioStreamView (AudioTimeAxisView& tv)
|
|||
|
||||
AudioStreamView::~AudioStreamView ()
|
||||
{
|
||||
for (CrossfadeViewList::iterator xi = crossfade_views.begin(); xi != crossfade_views.end(); ++xi) {
|
||||
delete xi->second;
|
||||
}
|
||||
}
|
||||
|
||||
int
|
||||
|
|
|
|||
|
|
@ -133,8 +133,10 @@ Editor::remove_route (TimeAxisView *tv)
|
|||
boost::shared_ptr<Route> route;
|
||||
TimeAxisView* next_tv = 0;
|
||||
|
||||
if (tv == entered_track) {
|
||||
entered_track = 0;
|
||||
if (entered_track) {
|
||||
if (tv == entered_track || tv == entered_track->get_parent()) {
|
||||
entered_track = 0;
|
||||
}
|
||||
}
|
||||
|
||||
/* the core model has changed, there is no need to sync
|
||||
|
|
|
|||
|
|
@ -1074,22 +1074,22 @@ SoundFileOmega::check_info (const vector<string>& paths, bool& same_size, bool&
|
|||
|
||||
if (!AudioFileSource::get_soundfile_info (*i, info, errmsg)) {
|
||||
err = true;
|
||||
}
|
||||
|
||||
if (info.channels > 1) {
|
||||
multichannel = true;
|
||||
}
|
||||
|
||||
if (sz == 0) {
|
||||
sz = info.length;
|
||||
} else {
|
||||
if (sz != info.length) {
|
||||
same_size = false;
|
||||
if (info.channels > 1) {
|
||||
multichannel = true;
|
||||
}
|
||||
|
||||
if (sz == 0) {
|
||||
sz = info.length;
|
||||
} else {
|
||||
if (sz != info.length) {
|
||||
same_size = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ((nframes_t) info.samplerate != session->frame_rate()) {
|
||||
src_needed = true;
|
||||
if ((nframes_t) info.samplerate != session->frame_rate()) {
|
||||
src_needed = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -73,6 +73,7 @@ AbstractUI<RequestObject>::unregister_thread (pthread_t thread_id)
|
|||
Glib::Mutex::Lock lm (request_buffer_map_lock);
|
||||
typename RequestBufferMap::iterator x = request_buffers.find (thread_id);
|
||||
if (x != request_buffers.end()) {
|
||||
delete (*x).second;
|
||||
request_buffers.erase (x);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue