aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/window.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/window.c b/src/window.c
index 302eef2414d..3e2c3c30d1c 100644
--- a/src/window.c
+++ b/src/window.c
@@ -1,6 +1,6 @@
1/* Window creation, deletion and examination for GNU Emacs. 1/* Window creation, deletion and examination for GNU Emacs.
2 Does not include redisplay. 2 Does not include redisplay.
3 Copyright (C) 1985,86,87,93,94,95,96,97,1998,2000, 2001, 2002 3 Copyright (C) 1985,86,87,93,94,95,96,97,1998,2000, 2001, 2002, 2003
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
@@ -4194,6 +4194,15 @@ window_scroll_pixel_based (window, n, whole, noerror)
4194 { 4194 {
4195 int pos = IT_CHARPOS (it); 4195 int pos = IT_CHARPOS (it);
4196 int bytepos; 4196 int bytepos;
4197
4198 /* If in the middle of a multi-glyph character move forward to
4199 the next character. */
4200 if (in_display_vector_p (&it))
4201 {
4202 ++pos;
4203 move_it_to (&it, pos, -1, -1, -1, MOVE_TO_POS);
4204 }
4205
4197 /* Set the window start, and set up the window for redisplay. */ 4206 /* Set the window start, and set up the window for redisplay. */
4198 set_marker_restricted (w->start, make_number (pos), 4207 set_marker_restricted (w->start, make_number (pos),
4199 w->buffer); 4208 w->buffer);