Subject: Re: bug#50660: 28.0.50; Text artifacting when the cursor moves over text under mouse face that originally displayed a box

From: Robert Pluim <[email-masked]>
Date: Thu, 14 Oct 2021 13:11:47 +0200

>>>>> On Thu, 14 Oct 2021 18:52:48 +0800, Po Lu via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <[email-masked]> said:

    Po Lu> +  struct face *face_for_box_line = s->face;
    Po Lu> +
    Po Lu> +  if (s->hl == DRAW_CURSOR && cursor_in_mouse_face_p (s->w))
    Po Lu> +    {
    Po Lu> +      /* In this situation, the cursor is in the mouse face, but
    Po Lu> +	 s->face hasn't been updated with the mouse face yet. */
    Po Lu> +      face_for_box_line =
    Po Lu> +	FACE_FROM_ID_OR_NULL (s->f, MOUSE_HL_INFO (s->f)->mouse_face_face_id);
    Po Lu> +
    Po Lu> +      if (!face_for_box_line)
    Po Lu> +	face_for_box_line = FACE_FROM_ID (s->f, MOUSE_FACE_ID);
    Po Lu> +    }

This chunk looks like itʼs repeated a lot, perhaps break it out into a
function?

Robert
--