return if $_[0] eq '';
more($self, sprintf("%x\r\n", bytes::length($_[0])));
more($self, $_[0]);
- $self->write("\r\n");
+
+ # use $self->write("\n\n") if you care about real-time
+ # streaming responses, public-inbox WWW does not.
+ more($self, "\r\n");
}
}
my $forward = $self->{forward};
# limit our own running time for fairness with other
# clients and to avoid buffering too much:
- my $n = 100;
while ($forward && defined(my $buf = $forward->getline)) {
$write->($buf);
last if $self->{closed};
if ($self->{write_buf_size}) {
$self->write($self->{pull});
- return;
- } elsif ((--$n) <= 0) {
+ } else {
PublicInbox::EvCleanup::asap($self->{pull});
- return;
}
+ return;
}
$self->{forward} = $self->{pull} = undef;
$forward->close if $forward; # avoid recursion