From: Eli Zaretskii Date: Fri, 27 Sep 2019 08:08:26 +0000 (+0300) Subject: Fix display of box around images X-Git-Tag: emacs-27.0.90~1407 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=5efd5515031ca65357732092f3f40e097ef52876;p=emacs.git Fix display of box around images * src/xdisp.c (face_before_or_after_it_pos): Handle correctly when we are called with it->bidi_it.first_elt set. (Bug#17114) --- diff --git a/src/xdisp.c b/src/xdisp.c index 6626fbcf63e..95895ec3acb 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -4359,6 +4359,11 @@ face_before_or_after_it_pos (struct it *it, bool before_p) int n = (it->what == IT_COMPOSITION ? it->cmp_it.nchars : 1); it_copy = *it; + /* If this is the first display element, + bidi_move_to_visually_next will deliver character at + current position without moving, so we need to enlarge N. */ + if (it->bidi_it.first_elt) + n++; while (n--) bidi_move_to_visually_next (&it_copy.bidi_it); @@ -4461,6 +4466,11 @@ face_before_or_after_it_pos (struct it *it, bool before_p) int n = (it->what == IT_COMPOSITION ? it->cmp_it.nchars : 1); it_copy = *it; + /* If this is the first display element, + bidi_move_to_visually_next will deliver character at + current position without moving, so we need to enlarge N. */ + if (it->bidi_it.first_elt) + n++; while (n--) bidi_move_to_visually_next (&it_copy.bidi_it);