Fix check for return value of catch_signal().
Commit
2d7a4d61 made adu's signal handling portable by switching from
signal() to sigaction() for installing signal handlers. This commit
added the new function catch_signal() which returns the return value
of the underlying call to sigaction(), i.e. zero on success, and -1
on errors.
However, embarrassingly enough, one caller of catch_signal() still
checked this return value against SIG_ERR, which is the value that
is returned from signal() on errors.
Fix this bug by testing the return value against zero.