diff options
author | Eric Wong <e@80x24.org> | 2021-05-21 10:28:25 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2021-05-23 01:33:01 +0000 |
commit | e901a56b3b30b22f16bc9c6460150b2b402b4ee7 (patch) | |
tree | 72e971f85d251bcbb0a92c9a956ec153652f7f2f /lib/PublicInbox/Sigfd.pm | |
parent | 3c1d0da4d0608b5a87371e602a911964d7c1498c (diff) | |
download | public-inbox-e901a56b3b30b22f16bc9c6460150b2b402b4ee7.tar.gz |
treewide: favor open(..., '+<&=', $fd)
Cut down on unnecessary imports of IO::Handle and method lookup + dispatch overhead.
Diffstat (limited to 'lib/PublicInbox/Sigfd.pm')
-rw-r--r-- | lib/PublicInbox/Sigfd.pm | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/lib/PublicInbox/Sigfd.pm b/lib/PublicInbox/Sigfd.pm index a4d1b3bb..d91ea0e7 100644 --- a/lib/PublicInbox/Sigfd.pm +++ b/lib/PublicInbox/Sigfd.pm @@ -8,7 +8,6 @@ use strict; use parent qw(PublicInbox::DS); use PublicInbox::Syscall qw(signalfd EPOLLIN EPOLLET SFD_NONBLOCK); use POSIX (); -use IO::Handle (); # returns a coderef to unblock signals if neither signalfd or kqueue # are available. @@ -27,7 +26,7 @@ sub new { my $io; my $fd = signalfd(-1, [keys %signo], $flags); if (defined $fd && $fd >= 0) { - $io = IO::Handle->new_from_fd($fd, 'r+'); + open($io, '+<&=', $fd) or die "open: $!"; } elsif (eval { require PublicInbox::DSKQXS }) { $io = PublicInbox::DSKQXS->signalfd([keys %signo], $flags); } else { |