aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog9
-rw-r--r--src/xdisp.c5
2 files changed, 13 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 8f2e01f8cf9..26ee524acda 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,12 @@
12014-08-31 Eli Zaretskii <eliz@gnu.org>
2
3 * xdisp.c (get_glyph_string_clip_rects): Don't let the width of a
4 clipping rectangle become negative (i.e. large positive, since
5 it's an unsigned data type). This can happen in R2L hscrolled
6 glyph rows, and caused us to draw the cursor glyph on the fringe.
7 For the details, see
8 http://lists.gnu.org/archive/html/emacs-devel/2014-08/msg00543.html.
9
12014-08-31 Ken Brown <kbrown@cornell.edu> 102014-08-31 Ken Brown <kbrown@cornell.edu>
2 11
3 * gmalloc.c: Don't include <stdlib.h>. Declare system malloc and 12 * gmalloc.c: Don't include <stdlib.h>. Declare system malloc and
diff --git a/src/xdisp.c b/src/xdisp.c
index 2b12dd8f557..4383c497d7a 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -2174,7 +2174,10 @@ get_glyph_string_clip_rects (struct glyph_string *s, NativeRectangle *rects, int
2174 2174
2175 if (s->x > r.x) 2175 if (s->x > r.x)
2176 { 2176 {
2177 r.width -= s->x - r.x; 2177 if (r.width >= s->x - r.x)
2178 r.width -= s->x - r.x;
2179 else /* R2L hscrolled row with cursor outside text area */
2180 r.width = 0;
2178 r.x = s->x; 2181 r.x = s->x;
2179 } 2182 }
2180 r.width = min (r.width, glyph->pixel_width); 2183 r.width = min (r.width, glyph->pixel_width);