diff options
author | Thomas Quinot <thomas@FreeBSD.org> | 2005-04-12 15:02:57 +0000 |
---|---|---|
committer | Thomas Quinot <thomas@FreeBSD.org> | 2005-04-12 15:02:57 +0000 |
commit | d1ac5c1981a98c481ce451ec942a479c111e0c9d (patch) | |
tree | 75f925cafc9174d6e1b3799c455860123bd7ab08 /usr.sbin/yppush | |
parent | 74c77551ed2d5aeb1067ca76abb9a04267b71187 (diff) | |
download | src-d1ac5c1981a98c481ce451ec942a479c111e0c9d.tar.gz src-d1ac5c1981a98c481ce451ec942a479c111e0c9d.zip |
(handler): When exitting upon an abnormal signal, yppush_exit() should not
attempt to clear its pending jobs list, as this could trigger another
signal, and cause an infinite recursion. What yppush_exit() tests
in order to determine whether to flush pending jobs is the
yppush_joblist chained list, so this is what needs to be cleared
in that case (not the yppush_jobs counter).
Reviewed by: audit@ (no objection)
MFC after: 2 weeks
Notes
Notes:
svn path=/head/; revision=144950
Diffstat (limited to 'usr.sbin/yppush')
-rw-r--r-- | usr.sbin/yppush/yppush_main.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/usr.sbin/yppush/yppush_main.c b/usr.sbin/yppush/yppush_main.c index 9a37a4208c35..951f413c837a 100644 --- a/usr.sbin/yppush/yppush_main.c +++ b/usr.sbin/yppush/yppush_main.c @@ -208,7 +208,7 @@ static void handler(int sig) { if (sig == SIGTERM || sig == SIGINT || sig == SIGABRT) { - yppush_jobs = 0; + yppush_joblist = NULL; yppush_exit(1); } |