yesno_res gui_syncyesno_run fix scroll run-on bug

the GUI_EVENT_NEED_UI_UPDATE event was not canceled till
after the call to scroll_stop this resulted in the scrolled line
being re-added after the function was done causing a crash

thanks spork, amachronic

Change-Id: I2e484a2b877f6da63171eb997f62a21e95ca9bfc
This commit is contained in:
William Wilgus 2022-10-16 12:53:34 -04:00
parent 5e864ecde9
commit 56d4227897

View file

@ -253,14 +253,15 @@ enum yesno_res gui_syncyesno_run(const struct text_message * main_message,
if(result_displayed) if(result_displayed)
sleep(HZ); sleep(HZ);
exit:
remove_event_ex(GUI_EVENT_NEED_UI_UPDATE, gui_yesno_ui_update, &yn[0]);
FOR_NB_SCREENS(i) FOR_NB_SCREENS(i)
{ {
screens[i].scroll_stop_viewport(yn[i].vp); screens[i].scroll_stop_viewport(yn[i].vp);
viewportmanager_theme_undo(i, true); viewportmanager_theme_undo(i, true);
} }
exit:
remove_event_ex(GUI_EVENT_NEED_UI_UPDATE, gui_yesno_ui_update, &yn[0]);
#ifdef HAVE_TOUCHSCREEN #ifdef HAVE_TOUCHSCREEN
touchscreen_set_mode(old_mode); touchscreen_set_mode(old_mode);
#endif #endif