X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fresourcethread.C;h=c3d69412ce65604194b7a6cbe63e47c001dfb9d2;hb=7be8c7f90868895abddcbafda66ede5632752a70;hp=c14bf27b79ca0b7b36def8d5e1afc7aba6baf128;hpb=30bdb85eb33a8ee7ba675038a86c6be59c43d7bd;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/resourcethread.C b/cinelerra-5.1/cinelerra/resourcethread.C index c14bf27b..c3d69412 100644 --- a/cinelerra-5.1/cinelerra/resourcethread.C +++ b/cinelerra-5.1/cinelerra/resourcethread.C @@ -338,8 +338,8 @@ void ResourceThread::stop() done = 1; interrupted = 1; draw_lock->unlock(); - join(); } + join(); } @@ -374,6 +374,8 @@ void ResourceThread::open_render_engine(EDL *nested_edl, File *ResourceThread::get_audio_source(Asset *asset) { + if( interrupted ) asset = 0; + if( audio_asset && audio_asset != asset && (!asset || strcmp(audio_asset->path, asset->path)) ) { @@ -394,6 +396,8 @@ File *ResourceThread::get_audio_source(Asset *asset) File *ResourceThread::get_video_source(Asset *asset) { + if( interrupted ) asset = 0; + if( video_asset && video_asset != asset && (!asset || strcmp(video_asset->path, asset->path)) ) {