summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2015-01-17 20:32:16 +0200
committerEli Zaretskii <eliz@gnu.org>2015-01-17 20:32:16 +0200
commite6518fc8f5afca5d71582aabb089147cba583966 (patch)
tree68975fea40e5e98bf689323fcb3c260016ad5c83 /src
parentb0af6745d6dfc19cdbeac2b6c34087a44c9f03fd (diff)
downloademacs-e6518fc8f5afca5d71582aabb089147cba583966.tar.gz
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.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog6
-rw-r--r--src/xdisp.c9
2 files changed, 15 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index a90cc41e601..ad4a85ae487 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
+2015-01-17 Eli Zaretskii <eliz@gnu.org>
+
+ * 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 <eliz@gnu.org>
* w32fns.c (w32_set_title_bar_text): New function, including
diff --git a/src/xdisp.c b/src/xdisp.c
index a1cc286512b..b1125d324c2 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);