fix still more do_indent_marked() breakage

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3457 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
master
David Lawrence Ramsey 2006-04-29 16:11:21 +00:00
parent 2e8fac6487
commit 7194a617c4
1 changed files with 8 additions and 6 deletions

View File

@ -279,13 +279,14 @@ void do_indent_marked(ssize_t len)
openfile->totsize -= indent_len; openfile->totsize -= indent_len;
/* Keep track of the change in the current line. */ /* Keep track of the change in the current line. */
if (f == openfile->current)
openfile->current_x -= indent_len;
if (f == openfile->mark_begin && if (f == openfile->mark_begin &&
openfile->mark_begin_x >= indent_len) openfile->mark_begin_x >= indent_len)
openfile->mark_begin_x -= indent_len; openfile->mark_begin_x -= indent_len;
if (f == openfile->current && openfile->current_x >=
indent_len)
openfile->current_x -= indent_len;
/* We've unindented, so set indent_changed to TRUE. */ /* We've unindented, so set indent_changed to TRUE. */
if (!indent_changed) if (!indent_changed)
indent_changed = TRUE; indent_changed = TRUE;
@ -300,12 +301,13 @@ void do_indent_marked(ssize_t len)
openfile->totsize += line_indent_len; openfile->totsize += line_indent_len;
/* Keep track of the change in the current line. */ /* Keep track of the change in the current line. */
if (f == openfile->mark_begin && openfile->current_x <
openfile->mark_begin_x)
openfile->mark_begin_x += line_indent_len;
if (f == openfile->current) if (f == openfile->current)
openfile->current_x += line_indent_len; openfile->current_x += line_indent_len;
if (f == openfile->mark_begin)
openfile->mark_begin_x += line_indent_len;
/* If the NO_NEWLINES flag isn't set, and this is the /* If the NO_NEWLINES flag isn't set, and this is the
* magicline, add a new magicline. */ * magicline, add a new magicline. */
if (!ISSET(NO_NEWLINES) && f == openfile->filebot) if (!ISSET(NO_NEWLINES) && f == openfile->filebot)