Prevent rare crash at exit in optimized builds
update_video_timeline() is called after destroying the video_timeline instance at exit. #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 #1 __GI_abort () at abort.c:79 #2 __assert_fail_base at assert.c:92 #3 __GI___assert_fail at assert.c:101 #4 Editor::update_video_timeline(bool) (this=0x55a10a25a060, flush=false) at ../gtk2_ardour/editor_videotimeline.cc:57 #5 Editor::visual_changer(Editor::VisualChange const&) (this=0x55a10a25a060, vc=...) at ../gtk2_ardour/editor.cc:4746 #6 Editor::idle_visual_changer() (this=0x55a10a25a060) at ../gtk2_ardour/editor.cc:4687 #7 Editor::_idle_visual_changer(void*) (arg=0x55a10a25a060) at ../gtk2_ardour/editor.cc:4645 #8 g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #9 () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #10 g_main_loop_run () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #11 gtk_main () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #12 Gtkmm2ext::UI::run(Receiver&) (this=0x55a105ababe0, old_receiver=...) at ../libs/gtkmm2ext/gtk_ui.cc:293 #13 main(int, char**) (argc=1, argv=0x7fffcd806dc8) at ../gtk2_ardour/main.cc:437
This commit is contained in:
parent
44bca6cc8f
commit
a4a96f7556
@ -55,6 +55,9 @@ Editor::update_video_timeline (bool flush)
|
||||
{
|
||||
// catch GUIIdle -> Editor::idle_visual_changer during quit/close
|
||||
assert (ARDOUR_UI::instance()->video_timeline);
|
||||
if (!ARDOUR_UI::instance()->video_timeline) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (flush) {
|
||||
ARDOUR_UI::instance()->video_timeline->flush_local_cache();
|
||||
|
Loading…
Reference in New Issue
Block a user