Commit 41232e67 authored by Eli Zaretskii's avatar Eli Zaretskii
Browse files

Avoid crashes due to bidi cache being reset during redisplay

If automatic character composition triggers GC, and
'garbage-collection-messages' are turned on, we could have the
bidi cache reset while processing RTL text, which would then
consistently crash.
* src/xdisp.c (display_echo_area_1): Protect the bidi cache
against changes inside 'try_window'.
parent f72bb4ce
Pipeline #5720 failed with stage
in 10 minutes and 37 seconds
......@@ -11539,7 +11539,9 @@ display_echo_area_1 (ptrdiff_t a1, Lisp_Object a2)
/* Display. */
clear_glyph_matrix (w->desired_matrix);
XSETWINDOW (window, w);
void *itdata = bidi_shelve_cache ();
try_window (window, start, 0);
bidi_unshelve_cache (itdata, false);
 
return window_height_changed_p;
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment