emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] /srv/bzr/emacs/trunk r111735: Fix previous commit for bug


From: Eli Zaretskii
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r111735: Fix previous commit for bug #13675.
Date: Mon, 11 Feb 2013 19:32:32 +0200
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 111735
fixes bug: http://debbugs.gnu.org/13675
committer: Eli Zaretskii <address@hidden>
branch nick: trunk
timestamp: Mon 2013-02-11 19:32:32 +0200
message:
  Fix previous commit for bug #13675.
  
   src/xdisp.c (move_it_vertically_backward, move_it_by_lines): Don't
   use the limitation on backwards movement when lines are truncated
   in the window.
modified:
  src/ChangeLog
  src/xdisp.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2013-02-11 10:21:52 +0000
+++ b/src/ChangeLog     2013-02-11 17:32:32 +0000
@@ -1,3 +1,9 @@
+2013-02-11  Eli Zaretskii  <address@hidden>
+
+       * xdisp.c (move_it_vertically_backward, move_it_by_lines): Don't
+       use the limitation on backwards movement when lines are truncated
+       in the window.  (Bug#13675)
+
 2013-02-11  Dmitry Antipov  <address@hidden>
 
        * marker.c (set_marker_internal): If desired position is passed

=== modified file 'src/xdisp.c'
--- a/src/xdisp.c       2013-02-11 10:21:52 +0000
+++ b/src/xdisp.c       2013-02-11 17:32:32 +0000
@@ -9003,7 +9003,10 @@
 
   /* Estimate how many newlines we must move back.  */
   nlines = max (1, dy / FRAME_LINE_HEIGHT (it->f));
-  pos_limit = max (start_pos - nlines * nchars_per_row, BEGV);
+  if (it->line_wrap == TRUNCATE)
+    pos_limit = BEGV;
+  else
+    pos_limit = max (start_pos - nlines * nchars_per_row, BEGV);
 
   /* Set the iterator's position that many lines back.  But don't go
      back more than NLINES full screen lines -- this wins a day with
@@ -9253,7 +9256,10 @@
       /* Go back -DVPOS buffer lines, but no farther than -DVPOS full
         screen lines, and reseat the iterator there.  */
       start_charpos = IT_CHARPOS (*it);
-      pos_limit = max (start_charpos + dvpos * nchars_per_row, BEGV);
+      if (it->line_wrap == TRUNCATE)
+       pos_limit = BEGV;
+      else
+       pos_limit = max (start_charpos + dvpos * nchars_per_row, BEGV);
       for (i = -dvpos; i > 0 && IT_CHARPOS (*it) > pos_limit; --i)
        back_to_previous_visible_line_start (it);
       reseat (it, it->current.pos, 1);


reply via email to

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