emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs-24 e6518fc: Fix display of images in R2L screen line


From: Eli Zaretskii
Subject: [Emacs-diffs] emacs-24 e6518fc: Fix display of images in R2L screen lines
Date: Sat, 17 Jan 2015 18:33:18 +0000

branch: emacs-24
commit e6518fc8f5afca5d71582aabb089147cba583966
Author: Eli Zaretskii <address@hidden>
Commit: Eli Zaretskii <address@hidden>

    Fix display of images in R2L screen lines
    
     src/xdisp.c (produce_image_glyph): Fix display of images in R2L
     screen lines: prepend the new glyph to the ones already there
     instead of appending it.
---
 src/ChangeLog |    6 ++++++
 src/xdisp.c   |    9 +++++++++
 2 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/src/ChangeLog b/src/ChangeLog
index a90cc41..ad4a85a 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
+2015-01-17  Eli Zaretskii  <address@hidden>
+
+       * xdisp.c (produce_image_glyph): Fix display of images in R2L
+       screen lines: prepend the new glyph to the ones already there
+       instead of appending it.
+
 2015-01-14  Eli Zaretskii  <address@hidden>
 
        * w32fns.c (w32_set_title_bar_text): New function, including
diff --git a/src/xdisp.c b/src/xdisp.c
index a1cc286..b1125d3 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -25428,6 +25428,15 @@ produce_image_glyph (struct it *it)
       enum glyph_row_area area = it->area;
 
       glyph = it->glyph_row->glyphs[area] + it->glyph_row->used[area];
+      if (it->glyph_row->reversed_p)
+       {
+         struct glyph *g;
+
+         /* Make room for the new glyph.  */
+         for (g = glyph - 1; g >= it->glyph_row->glyphs[it->area]; g--)
+           g[1] = *g;
+         glyph = it->glyph_row->glyphs[it->area];
+       }
       if (glyph < it->glyph_row->glyphs[area + 1])
        {
          glyph->charpos = CHARPOS (it->position);



reply via email to

[Prev in Thread] Current Thread [Next in Thread]