fix more do_indent_marked() breakage

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3456 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
master
David Lawrence Ramsey 2006-04-29 15:44:58 +00:00
parent 5c819b53e1
commit 2e8fac6487
1 changed files with 9 additions and 8 deletions

View File

@ -278,12 +278,13 @@ void do_indent_marked(ssize_t len)
null_at(&f->data, line_len - indent_len + 1); null_at(&f->data, line_len - indent_len + 1);
openfile->totsize -= indent_len; openfile->totsize -= indent_len;
/* If this is the current line, keep track of the change /* Keep track of the change in the current line. */
* in it. */ if (f == openfile->current)
if (f == openfile->current) {
openfile->current_x -= indent_len; openfile->current_x -= indent_len;
if (f == openfile->mark_begin &&
openfile->mark_begin_x >= indent_len)
openfile->mark_begin_x -= indent_len; openfile->mark_begin_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)
@ -298,12 +299,12 @@ void do_indent_marked(ssize_t len)
strncpy(f->data, line_indent, line_indent_len); strncpy(f->data, line_indent, line_indent_len);
openfile->totsize += line_indent_len; openfile->totsize += line_indent_len;
/* If this is the current line, keep track of the change in /* Keep track of the change in the current line. */
* it. */ 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; 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. */