]> git.wh0rd.org Git - nano.git/commitdiff
fix still more do_indent_marked() breakage
authorDavid Lawrence Ramsey <pooka109@gmail.com>
Sat, 29 Apr 2006 16:11:21 +0000 (16:11 +0000)
committerDavid Lawrence Ramsey <pooka109@gmail.com>
Sat, 29 Apr 2006 16:11:21 +0000 (16:11 +0000)
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3457 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

src/text.c

index 00a892830a4afd66c3be19cfc5c746be1ecaa076..eb8220b6cb72d40282c7e26d817dbfb88d01cba0 100644 (file)
@@ -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)