From 4aafd44087292ac5ab254f02c3358267c685374b Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 15 Dec 2020 11:47:17 +0000 Subject: daemon: simplify fork() failure checks The defined-or `//' operator in 5.10 allows us to golf down our code slightly. --- lib/PublicInbox/Daemon.pm | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'lib/PublicInbox/Daemon.pm') diff --git a/lib/PublicInbox/Daemon.pm b/lib/PublicInbox/Daemon.pm index fdedaee7..a2171535 100644 --- a/lib/PublicInbox/Daemon.pm +++ b/lib/PublicInbox/Daemon.pm @@ -237,8 +237,7 @@ EOF }; if ($daemonize) { - my $pid = fork; - die "could not fork: $!\n" unless defined $pid; + my $pid = fork // die "fork: $!"; exit if $pid; open(STDIN, '+<', '/dev/null') or @@ -246,8 +245,7 @@ EOF open STDOUT, '>&STDIN' or die "redirect stdout failed: $!\n"; open STDERR, '>&STDIN' or die "redirect stderr failed: $!\n"; POSIX::setsid(); - $pid = fork; - die "could not fork: $!\n" unless defined $pid; + $pid = fork // die "fork: $!"; exit if $pid; } return unless defined $pid_file; -- cgit v1.2.3-24-ge0c7