about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2021-01-13 19:06:17 -1200
committerEric Wong <e@80x24.org>2021-01-14 23:14:08 +0000
commitb5607f3185f956f23dee025255a84b75c79f8e62 (patch)
tree5d9e79da427e90812b7113ebff8f0df30234ecf6
parentb552bb9150775fe4b5a9eb76803e8859c647be92 (diff)
downloadpublic-inbox-b5607f3185f956f23dee025255a84b75c79f8e62.tar.gz
This matches existing -httpd/-nntpd/-imapd daemon behavior.
From what I can recall, it is less racy for the process doing
bind(2) to unlink it if stale.
-rw-r--r--lib/PublicInbox/LEI.pm1
-rw-r--r--t/lei.t4
2 files changed, 2 insertions, 3 deletions
diff --git a/lib/PublicInbox/LEI.pm b/lib/PublicInbox/LEI.pm
index 2889fa76..7a1df0bb 100644
--- a/lib/PublicInbox/LEI.pm
+++ b/lib/PublicInbox/LEI.pm
@@ -789,7 +789,6 @@ sub lazy_start {
         local $quit = sub {
                 $exit_code //= shift;
                 my $listener = $l or exit($exit_code);
-                unlink($path) if defined($path);
                 # closing eof_w triggers \&noop wakeup
                 $eof_w = $l = $path = undef;
                 $listener->close; # DS::close
diff --git a/t/lei.t b/t/lei.t
index 3ebaade6..240735bf 100644
--- a/t/lei.t
+++ b/t/lei.t
@@ -237,13 +237,13 @@ SKIP: { # real socket
                 kill(0, $pid) or last;
                 tick();
         }
-        ok(!-S $sock, 'sock gone');
+        ok(-S $sock, 'sock still exists');
         ok(!kill(0, $pid), 'pid gone after stop');
 
         ok($lei->(qw(daemon-pid)), 'daemon-pid');
         chomp(my $new_pid = $out);
         ok(kill(0, $new_pid), 'new pid is running');
-        ok(-S $sock, 'sock exists again');
+        ok(-S $sock, 'sock still exists');
 
         for my $sig (qw(-0 -CHLD)) {
                 ok($lei->('daemon-kill', $sig), "handles $sig");