- char tmp[100];
- signal (sig, redirect_output_signal);
- /* Please note that the double `%' in `%%s' is intentional, because
- redirect_output passes tmp through printf. */
- sprintf (tmp, _("%s received, redirecting output to `%%s'.\n"),
- (sig == SIGHUP ? "SIGHUP" :
- (sig == SIGUSR1 ? "SIGUSR1" :
- "WTF?!")));
- redirect_output (tmp);
+ char *signal_name = (sig == SIGHUP ? "SIGHUP" :
+ (sig == SIGUSR1 ? "SIGUSR1" :
+ "WTF?!"));
+ log_request_redirect_output (signal_name);