]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix bug #9296 with vertical cursor motion on images.
authorEli Zaretskii <eliz@gnu.org>
Sun, 14 Aug 2011 11:10:19 +0000 (14:10 +0300)
committerEli Zaretskii <eliz@gnu.org>
Sun, 14 Aug 2011 11:10:19 +0000 (14:10 +0300)
 src/xdisp.c (move_it_in_display_line_to): Don't invoke
 IT_RESET_X_ASCENT_DESCENT when iterator position was restored from
 ppos_it.  Fixes vertical cursor motion when line beginning is
 covered by an image.

src/ChangeLog
src/xdisp.c

index b0a0e03a8a7a956824fd015a3a8082daa98bb191..b5da1be5c7d25a94fd2f2a0e8392f38e835c15ff 100644 (file)
@@ -1,3 +1,10 @@
+2011-08-14  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (move_it_in_display_line_to): Don't invoke
+       IT_RESET_X_ASCENT_DESCENT when iterator position was restored from
+       ppos_it.  Fixes vertical cursor motion when line beginning is
+       covered by an image.  (Bug#9296)
+
 2011-08-14  Jan Djärv  <jan.h.d@swipnet.se>
 
        * nsterm.h (ns_run_ascript): Declare.
index a3bdcbdf4c684bae4b1c7ab4c29685faa3975090..ff3f55bef256de348a643c571888b9eeb4e244b0 100644 (file)
@@ -8037,8 +8037,12 @@ move_it_in_display_line_to (struct it *it,
              if (!saw_smaller_pos && IT_CHARPOS (*it) > to_charpos)
                {
                  if (IT_CHARPOS (ppos_it) < ZV)
-                   RESTORE_IT (it, &ppos_it, ppos_data);
-                 goto buffer_pos_reached;
+                   {
+                     RESTORE_IT (it, &ppos_it, ppos_data);
+                     result = MOVE_POS_MATCH_OR_ZV;
+                   }
+                 else
+                   goto buffer_pos_reached;
                }
              else if (it->line_wrap == WORD_WRAP && atpos_it.sp >= 0
                       && IT_CHARPOS (*it) > to_charpos)