Mercurial > emacs
diff src/indent.c @ 21976:42c00d12d8d0
(compute_motion): Fix bug of handling wide-column
character around right margin.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Thu, 07 May 1998 06:41:12 +0000 |
parents | 0c3d6e2c4176 |
children | e80802548c11 |
line wrap: on
line diff
--- a/src/indent.c Thu May 07 06:34:20 1998 +0000 +++ b/src/indent.c Thu May 07 06:41:12 1998 +0000 @@ -1223,7 +1223,9 @@ } /* Stop if past the target buffer position or screen position. */ - if (pos > to) + if (pos > to + || vpos > tovpos + || vpos == tovpos && hpos > tohpos) { /* Go back to the previous position. */ pos = prev_pos; @@ -1256,24 +1258,6 @@ break; } - if (vpos > tovpos || vpos == tovpos && hpos >= tohpos) - { - if (contin_hpos && prev_hpos == 0 - && ((hpos > tohpos && contin_hpos == width) - || (wide_column_end_hpos > width))) - { /* Line breaks because we can't put the character at the - previous line any more. It is not the multi-column - character continued in middle. Go back to previous - buffer position, screen position, and set tab offset - to previous value. It's the beginning of the - line. */ - pos = prev_pos; - pos_byte = prev_pos_byte; - hpos = prev_hpos; - tab_offset = prev_tab_offset; - } - break; - } if (pos == ZV) /* We cannot go beyond ZV. Stop here. */ break;