From 59bbc0b85831cfbb115fbe8a18cc0e899984f790 Mon Sep 17 00:00:00 2001 From: Benno Schulenberg Date: Sat, 1 Aug 2020 11:49:28 +0200 Subject: [PATCH] tweaks: print error message directly instead of passing it to the caller This will allow a simplification in the next commit. --- src/text.c | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/src/text.c b/src/text.c index 70cd81e8..5c7b483b 100644 --- a/src/text.c +++ b/src/text.c @@ -2335,8 +2335,10 @@ const char *do_int_speller(const char *tempfile_name) int spell_status, sort_status, uniq_status; /* Create all three pipes up front. */ - if (pipe(spell_fd) == -1 || pipe(sort_fd) == -1 || pipe(uniq_fd) == -1) - return _("Could not create pipe"); + if (pipe(spell_fd) == -1 || pipe(sort_fd) == -1 || pipe(uniq_fd) == -1) { + statusline(ALERT, _("Could not create pipe")); + return NULL; + } /* Fork a process to run spell in. */ if ((pid_spell = fork()) == 0) { @@ -2422,7 +2424,8 @@ const char *do_int_speller(const char *tempfile_name) if (pipesize < 1) { close(uniq_fd[0]); - return _("Could not get size of pipe buffer"); + statusline(ALERT, _("Could not get size of pipe buffer")); + return NULL; } /* Leave curses mode so that error messages go to the original screen. */ @@ -2488,16 +2491,14 @@ const char *do_int_speller(const char *tempfile_name) waitpid(pid_uniq, &uniq_status, 0); if (WIFEXITED(uniq_status) == 0 || WEXITSTATUS(uniq_status)) - return _("Error invoking \"uniq\""); + statusline(ALERT, _("Error invoking \"uniq\"")); + else if (WIFEXITED(sort_status) == 0 || WEXITSTATUS(sort_status)) + statusline(ALERT, _("Error invoking \"sort\"")); + else if (WIFEXITED(spell_status) == 0 || WEXITSTATUS(spell_status)) + statusline(ALERT, _("Error invoking \"spell\"")); + else + statusbar(_("Finished checking spelling")); - if (WIFEXITED(sort_status) == 0 || WEXITSTATUS(sort_status)) - return _("Error invoking \"sort\""); - - if (WIFEXITED(spell_status) == 0 || WEXITSTATUS(spell_status)) - return _("Error invoking \"spell\""); - - /* When all went okay. */ - statusbar(_("Finished checking spelling")); return NULL; }