summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Src/exec.c7
2 files changed, 10 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index c7695c09d..870774090 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2019-10-16 Peter Stephenson <p.stephenson@samsung.com>
+
+ * _RuRo_ (Андрей Стоцкий): 44841: Src/exec.c: Better error
+ checking of nice, since return value can be negative.
+
2019-10-14 Daniel Shahaf <d.s@daniel.shahaf.name>
* 44812: Completion/Unix/Command/_subversion: Fix syntax error
diff --git a/Src/exec.c b/Src/exec.c
index e81053d67..6014ec9a5 100644
--- a/Src/exec.c
+++ b/Src/exec.c
@@ -2765,9 +2765,12 @@ execcmd_fork(Estate state, int how, int type, Wordcode varspc,
sigtrapped[SIGEXIT] = 0;
#ifdef HAVE_NICE
/* Check if we should run background jobs at a lower priority. */
- if ((how & Z_ASYNC) && isset(BGNICE))
- if (nice(5) < 0)
+ if ((how & Z_ASYNC) && isset(BGNICE)) {
+ errno = 0;
+ nice(5);
+ if (errno)
zwarn("nice(5) failed: %e", errno);
+ }
#endif /* HAVE_NICE */
return 0;