]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/ExtSearchIdx.pm
ds: simplify signalfd use
[public-inbox.git] / lib / PublicInbox / ExtSearchIdx.pm
index 6b29789a2ed89d33d12e654d6a95f9bbe65cc8fa..c34225b29d9a5249f89f5f7fc036b4d2666caf4a 100644 (file)
@@ -1305,19 +1305,11 @@ sub eidx_watch { # public-inbox-extindex --watch main loop
        };
        my $quit = PublicInbox::SearchIdx::quit_cb($sync);
        $sig->{QUIT} = $sig->{INT} = $sig->{TERM} = $quit;
-       my $sigfd = PublicInbox::Sigfd->new($sig,
-                                       $PublicInbox::Syscall::SFD_NONBLOCK);
-       @SIG{keys %$sig} = values(%$sig) if !$sigfd;
        local $self->{-watch_sync} = $sync; # for ->on_inbox_unlock
-       if (!$sigfd) {
-               # wake up every second to accept signals if we don't
-               # have signalfd or IO::KQueue:
-               PublicInbox::DS::sig_setmask($oldset);
-               PublicInbox::DS->SetLoopTimeout(1000);
-       }
        PublicInbox::DS->SetPostLoopCallback(sub { !$sync->{quit} });
        $pr->("initial scan complete, entering event loop\n") if $pr;
-       PublicInbox::DS->EventLoop; # calls InboxIdle->event_step
+       # calls InboxIdle->event_step:
+       PublicInbox::DS::event_loop($sig, $oldset);
        done($self);
 }