]> git.wh0rd.org Git - nano.git/commitdiff
Reenabling SIGWINCH-es also when invocation of the formatter fails,
authorBenno Schulenberg <bensberg@justemail.net>
Tue, 28 Jul 2015 19:39:34 +0000 (19:39 +0000)
committerBenno Schulenberg <bensberg@justemail.net>
Tue, 28 Jul 2015 19:39:34 +0000 (19:39 +0000)
and correcting some comments.

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@5324 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

ChangeLog
src/nano.c
src/text.c

index 327af02c16cedc2e068a698d6831630fc2b4305b..919bd71d63f32abc9e5ccd1afe60e35ed4e8c964 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-07-28  Benno Schulenberg  <bensberg@justemail.net>
+       * src/text.c (do_formatter), src/nano.c (allow_pending_sigwinch):
+       Reenable SIGWINCH-es also when invoking the formatter fails, and
+       correct some comments.
+
 2015-07-26  Benno Schulenberg  <bensberg@justemail.net>
        * src/search.c (do_replace_loop): When doing regex replacements, find
        each zero-length match only once.  This fixes Savannah bug #45626.
index 84329905b3d88deda15ab244e988102ac0faf1ea..2556c2afeb3ef1e9332d3fbb1bd00d4589459120 100644 (file)
@@ -1396,12 +1396,13 @@ void regenerate_screen(void)
     total_refresh();
 }
 
-/* If allow is TRUE, block any SIGWINCH signals that we get, so that we
- * can deal with them later.  If allow is FALSE, unblock any SIGWINCH
+/* If allow is FALSE, block any SIGWINCH signals that we get, so that
+ * we can deal with them later.  If allow is TRUE, unblock any SIGWINCH
  * signals that we have, so that we can deal with them now. */
 void allow_pending_sigwinch(bool allow)
 {
     sigset_t winch;
+
     sigemptyset(&winch);
     sigaddset(&winch, SIGWINCH);
     sigprocmask(allow ? SIG_UNBLOCK : SIG_BLOCK, &winch, NULL);
index 0e410b50b044e6604c5da231bd70feebf4f42e44..3713cbc18d0eb24a3f508bfa2538d51f1572798b 100644 (file)
@@ -3292,8 +3292,8 @@ void do_formatter(void)
     }
 
 #ifndef NANO_TINY
-    /* Don't handle a pending SIGWINCH until the alternate format checker
-     * is finished and we've loaded the format-checked file back in. */
+    /* Don't handle any SIGWINCHes until the formatter has finished and
+     * we've loaded the reformatted file back in. */
     allow_pending_sigwinch(FALSE);
 #endif
 
@@ -3323,17 +3323,17 @@ void do_formatter(void)
        do_gotopos(lineno_save, current_x_save, current_y_save, pww_save);
        set_modified();
 
-#ifndef NANO_TINY
-       /* Handle a pending SIGWINCH again. */
-       allow_pending_sigwinch(TRUE);
-#endif
-
        finalstatus = _("Finished formatting");
     }
 
     unlink(temp);
     free(temp);
 
+#ifndef NANO_TINY
+    /* Handle SIGWINCHes again. */
+    allow_pending_sigwinch(TRUE);
+#endif
+
     /* If the formatter printed any error messages onscreen, make
      * sure that they're cleared off. */
     total_refresh();