From 5b946f6c4ddb82d2436c5012e719d470802987d0 Mon Sep 17 00:00:00 2001
From: Peter Stephenson
Date: Sat, 17 Feb 2018 22:35:32 +0000
Subject: 42362: protect REPORTTIME logic from bad status
---
ChangeLog | 4 ++++
Src/jobs.c | 3 +++
2 files changed, 7 insertions(+)
diff --git a/ChangeLog b/ChangeLog
index 21dd91629..d1696e196 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2018-02-17 Peter Stephenson
+
+ * 42362: Src/jobs.c: protet REPORTTIME logic from bad status.
+
2018-02-13 Peter Stephenson
* Eitan Adler: Doc/Zsh/params.yo: REPORTMEMORY is in kilobytes,
diff --git a/Src/jobs.c b/Src/jobs.c
index fc5bfacc6..503618f47 100644
--- a/Src/jobs.c
+++ b/Src/jobs.c
@@ -925,6 +925,7 @@ should_report_time(Job j)
struct value vbuf;
Value v;
char *s = "REPORTTIME";
+ int save_errflag = errflag;
zlong reporttime = -1;
#ifdef HAVE_GETRUSAGE
char *sm = "REPORTMEMORY";
@@ -936,12 +937,14 @@ should_report_time(Job j)
return 1;
queue_signals();
+ errflag = 0;
if ((v = getvalue(&vbuf, &s, 0)))
reporttime = getintvalue(v);
#ifdef HAVE_GETRUSAGE
if ((v = getvalue(&vbuf, &sm, 0)))
reportmemory = getintvalue(v);
#endif
+ errflag = save_errflag;
unqueue_signals();
if (reporttime < 0
#ifdef HAVE_GETRUSAGE
--
cgit 1.4.1