From 8acfb1f135a0c3d156ed5cc19a26844c09d20acb Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 12 Jan 2020 21:17:46 +0000 Subject: ds: new: avoid redundant check, make clobbering fatal "fileno(undef)" already dies under "use strict", so there's no need to check for it ourselves. As far as "fileno($closed_io)" or "fileno($fake_io)" goes, we'll let epoll_ctl detect the error, instead. Our design should make DescriptorMap entries impossible to clobber, so make it fatal via confess in case it does happen, because inadvertantly clobbering a FD would be very bad. While we're at it, remove a redundant return statement and rely on implicit returns. --- lib/PublicInbox/DS.pm | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'lib/PublicInbox') diff --git a/lib/PublicInbox/DS.pm b/lib/PublicInbox/DS.pm index 058b1358..3989bd2b 100644 --- a/lib/PublicInbox/DS.pm +++ b/lib/PublicInbox/DS.pm @@ -337,9 +337,6 @@ sub new { $self->{sock} = $sock; my $fd = fileno($sock); - Carp::cluck("undef sock and/or fd in PublicInbox::DS->new. sock=" . ($sock || "") . ", fd=" . ($fd || "")) - unless $sock && $fd; - _InitPoller(); if (epoll_ctl($Epoll, EPOLL_CTL_ADD, $fd, $ev)) { @@ -349,11 +346,10 @@ sub new { } die "couldn't add epoll watch for $fd: $!\n"; } - Carp::cluck("PublicInbox::DS::new blowing away existing descriptor map for fd=$fd ($DescriptorMap{$fd})") - if $DescriptorMap{$fd}; + confess("DescriptorMap{$fd} defined ($DescriptorMap{$fd})") + if defined($DescriptorMap{$fd}); $DescriptorMap{$fd} = $self; - return $self; } -- cgit v1.2.3-24-ge0c7