From 88f7be23b0d3d6e69ad8d99f22c567c022564e18 Mon Sep 17 00:00:00 2001 From: Harry Jeffery Date: Fri, 12 Jul 2019 22:19:28 +0100 Subject: Fix event loop hanging --- src/imv.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'src/imv.c') diff --git a/src/imv.c b/src/imv.c index b81d9a8..299dddb 100644 --- a/src/imv.c +++ b/src/imv.c @@ -896,13 +896,6 @@ int imv_run(struct imv *imv) while (!imv->quit) { - imv_window_pump_events(imv->window, event_handler, imv); - - /* if we're quitting, don't bother drawing any more images */ - if (imv->quit) { - break; - } - /* Check if navigator wrapped around paths lists */ if (!imv->loop_input && imv_navigator_wrapped(imv->navigator)) { break; @@ -1069,6 +1062,9 @@ int imv_run(struct imv *imv) /* Go to sleep until an input/internal event or the timeout expires */ imv_window_wait_for_event(imv->window, timeout); + + /* Handle the new events that have arrived */ + imv_window_pump_events(imv->window, event_handler, imv); } if (imv->list_files_at_exit) { -- cgit v1.2.3