From 7194a617c430709f0d22bb43c86831a37bc37290 Mon Sep 17 00:00:00 2001 From: David Lawrence Ramsey Date: Sat, 29 Apr 2006 16:11:21 +0000 Subject: [PATCH] fix still more do_indent_marked() breakage git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3457 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- src/text.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/text.c b/src/text.c index 00a89283..eb8220b6 100644 --- a/src/text.c +++ b/src/text.c @@ -279,13 +279,14 @@ void do_indent_marked(ssize_t len) openfile->totsize -= indent_len; /* Keep track of the change in the current line. */ - if (f == openfile->current) - openfile->current_x -= indent_len; - if (f == openfile->mark_begin && 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. */ if (!indent_changed) indent_changed = TRUE; @@ -300,12 +301,13 @@ void do_indent_marked(ssize_t len) openfile->totsize += line_indent_len; /* 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) 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 * magicline, add a new magicline. */ if (!ISSET(NO_NEWLINES) && f == openfile->filebot)