* src/xdisp.c (Fbuffer_text_pixel_size): Restore window attributes
important for redisplay of the target WINDOW. (Bug#64713)
set_buffer_internal_1 (b);
+ ptrdiff_t base_line_pos = w->base_line_pos;
+ int end_valid = w->window_end_valid;
if (!EQ (buffer, w->contents))
{
wset_buffer (w, buffer);
unbind_to (count, Qnil);
+ /* Restore original values. This is important if this function is
+ called from some ':eval' form in the middle of redisplay. */
+ w->base_line_pos = base_line_pos;
+ w->window_end_valid = end_valid;
+
return value;
}