X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fbatchrender.C;fp=cinelerra-5.1%2Fcinelerra%2Fbatchrender.C;h=4c5f1d4bac8b1375afda0e996fe89eb3a88f3cfa;hb=b402ed7f93de4c98e6651483eb8561cf1c37ec9a;hp=9e45b3ec0a7e13054bee3c1c161fc471516ed1d0;hpb=559af27994c49da1d98e085f4ac2ec1ad1d1d27c;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/batchrender.C b/cinelerra-5.1/cinelerra/batchrender.C index 9e45b3ec..4c5f1d4b 100644 --- a/cinelerra-5.1/cinelerra/batchrender.C +++ b/cinelerra-5.1/cinelerra/batchrender.C @@ -672,6 +672,8 @@ BatchRenderGUI::BatchRenderGUI(MWindow *mwindow, BatchRenderGUI::~BatchRenderGUI() { lock_window("BatchRenderGUI::~BatchRenderGUI"); + loadlist_batch->stop(); + savelist_batch->stop(); delete format_tools; unlock_window(); } @@ -996,16 +998,17 @@ BatchRenderSaveList::BatchRenderSaveList(BatchRenderThread *thread, int x, int y } BatchRenderSaveList::~BatchRenderSaveList() +{ + stop(); + delete startup_lock; +} + +void BatchRenderSaveList::stop() { startup_lock->lock("BatchRenderSaveList::~BrowseButton"); - if( gui ) { - gui->lock_window(); - gui->set_done(1); - gui->unlock_window(); - } + if( gui ) gui->set_done(1); startup_lock->unlock(); Thread::join(); - delete startup_lock; } int BatchRenderSaveList::handle_event() @@ -1046,7 +1049,6 @@ void BatchRenderSaveList::run() thread->save_jobs(thread->batch_path); } - this->thread->gui->flush(); startup_lock->lock("BatchRenderLoadList::run"); gui = 0; startup_lock->unlock(); @@ -1072,16 +1074,17 @@ BatchRenderLoadList::BatchRenderLoadList(BatchRenderThread *thread, } BatchRenderLoadList::~BatchRenderLoadList() +{ + stop(); + delete startup_lock; +} + +void BatchRenderLoadList::stop() { startup_lock->lock("BatchRenderLoadList::~BrowseButton"); - if( gui ) { - gui->lock_window(); - gui->set_done(1); - gui->unlock_window(); - } + if( gui ) gui->set_done(1); startup_lock->unlock(); Thread::join(); - delete startup_lock; } int BatchRenderLoadList::handle_event() @@ -1125,7 +1128,6 @@ void BatchRenderLoadList::run() thread->gui->change_job(); } - thread->gui->flush(); startup_lock->lock("BatchRenderLoadList::run"); gui = 0; startup_lock->unlock();