lib/PublicInbox/HTTP.pm | 9 ++------- diff --git a/lib/PublicInbox/HTTP.pm b/lib/PublicInbox/HTTP.pm index 800b2401e3cb6b2fc70ea963e3f9738bc7ddd05c..c141fc896d0538875ca5a76c26c413ec910c4652 100644 --- a/lib/PublicInbox/HTTP.pm +++ b/lib/PublicInbox/HTTP.pm @@ -16,7 +16,6 @@ use Fcntl qw(:seek); use Plack::HTTPParser qw(parse_http_request); # XS or pure Perl use HTTP::Status qw(status_message); use HTTP::Date qw(time2str); -use Time::HiRes qw(clock_gettime CLOCK_MONOTONIC); use Scalar::Util qw(weaken); use IO::File; use constant { @@ -25,8 +24,6 @@ CHUNK_END => -2, # \r\n CHUNK_ZEND => -3, # \r\n CHUNK_MAX_HDR => 256, }; - -sub now () { clock_gettime(CLOCK_MONOTONIC) } # FIXME: duplicated code with NNTP.pm, layering violation my $WEAKEN = {}; # string(inbox) -> inbox @@ -270,17 +267,15 @@ local $/ = \8192; my $forward = $self->{forward}; # limit our own running time for fairness with other # clients and to avoid buffering too much: - my $end = now() + 0.1; while ($forward && defined(my $buf = $forward->getline)) { $write->($buf); last if $self->{closed}; if ($self->{write_buf_size}) { $self->write($self->{pull}); - return; - } elsif (now() > $end) { + } else { PublicInbox::EvCleanup::asap($self->{pull}); - return; } + return; } $self->{forward} = $self->{pull} = undef; $forward->close if $forward; # avoid recursion