From ee812f2a987d295659c041c577aac8db93de819f Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Wed, 18 Aug 2021 16:14:29 +0300 Subject: [PATCH] Yet another place inside redisplay_window to prevent quitting * src/xdisp.c (handle_single_display_spec): Inhibit quitting around the call to lookup_image. (Bug#44448) --- src/xdisp.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/xdisp.c b/src/xdisp.c index ceb0fa7e64d..ada9ed6c22b 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -5788,8 +5788,15 @@ handle_single_display_spec (struct it *it, Lisp_Object spec, Lisp_Object object, #ifdef HAVE_WINDOW_SYSTEM else { + ptrdiff_t count = SPECPDL_INDEX (); + it->what = IT_IMAGE; + /* Don't allow quitting from lookup_image, for when we are + displaying a non-selected window, and the buffer's point + was temporarily moved to the window-point. */ + specbind (Qinhibit_quit, Qt); it->image_id = lookup_image (it->f, value, it->face_id); + unbind_to (count, Qnil); it->position = start_pos; it->object = NILP (object) ? it->w->contents : object; it->method = GET_FROM_IMAGE; -- 2.39.2