# HG changeset patch # User Richard M. Stallman # Date 1008196048 0 # Node ID ea97be55d899904dc35bd34a8b1308f943d6b636 # Parent fd3c70d7a093d28c8cd4161639e8cb3440f0b8bc (CLEAR_FACE_CACHE_COUNT): Redefine as 500. (redisplay_internal): Call clear_image_cache only for window terminals. diff -r fd3c70d7a093 -r ea97be55d899 src/xdisp.c --- a/src/xdisp.c Wed Dec 12 20:07:32 2001 +0000 +++ b/src/xdisp.c Wed Dec 12 22:27:28 2001 +0000 @@ -7231,7 +7231,7 @@ frame_title_ptr so that display_mode_element will output into it; then display the title. */ obuf = current_buffer; - Fset_buffer (XWINDOW (f->selected_window)->buffer); + set_buffer_internal_1 (XBUFFER (XWINDOW (f->selected_window)->buffer)); fmt = FRAME_ICONIFIED_P (f) ? Vicon_title_format : Vframe_title_format; frame_title_ptr = frame_title_buf; init_iterator (&it, XWINDOW (f->selected_window), -1, -1, @@ -7239,7 +7239,7 @@ display_mode_element (&it, 0, -1, -1, fmt); len = frame_title_ptr - frame_title_buf; frame_title_ptr = NULL; - set_buffer_internal (obuf); + set_buffer_internal_1 (obuf); /* Set the title only if it's changed. This avoids consing in the common case where it hasn't. (If it turns out that we've @@ -8186,7 +8186,7 @@ Every CLEAR_FACE_CACHE_COUNT full redisplays, the face cache is cleared. */ -#define CLEAR_FACE_CACHE_COUNT 10000 +#define CLEAR_FACE_CACHE_COUNT 500 static int clear_face_cache_count; /* Record the previous terminal frame we displayed. */ @@ -8813,6 +8813,10 @@ if (FRAME_WINDOW_P (f) || f == sf) { + if (clear_face_cache_count % 50 == 0 + && FRAME_WINDOW_P (f)) + clear_image_cache (f, 0); + /* Mark all the scroll bars to be removed; we'll redeem the ones we want when we redisplay their windows. */ if (condemn_scroll_bars_hook)