diff options
author | Eric Wong <e@80x24.org> | 2016-05-03 02:52:23 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2016-05-03 09:12:37 +0000 |
commit | ce44148b662558922523465f29d372912b7c6a61 (patch) | |
tree | a604d42a8f1670854fac2ee9b3c069a64796bcef /lib/PublicInbox | |
parent | 2e4250880849e2f08cb58a8708952fcd8a4a6e54 (diff) | |
download | public-inbox-ce44148b662558922523465f29d372912b7c6a61.tar.gz |
This empty string check is for middlewares such as Deflater which may write empty strings, not for direct real callers of Danga::Socket who (presumably) know what they're doing.
Diffstat (limited to 'lib/PublicInbox')
-rw-r--r-- | lib/PublicInbox/HTTP.pm | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/lib/PublicInbox/HTTP.pm b/lib/PublicInbox/HTTP.pm index 3286e79c..bbcb0898 100644 --- a/lib/PublicInbox/HTTP.pm +++ b/lib/PublicInbox/HTTP.pm @@ -189,7 +189,9 @@ sub response_header_write { sub response_write { my ($self, $env, $res) = @_; my $alive = response_header_write($self, $env, $res); - my $write = sub { $self->write($_[0]) }; + + # middlewares such as Deflater may write empty strings + my $write = sub { $self->write($_[0]) if $_[0] ne '' }; my $close = sub { if ($alive) { $self->event_write; # watch for readability if done @@ -390,13 +392,6 @@ sub close { $self->SUPER::close(@_); } -sub write ($$) : method { - my PublicInbox::HTTP $self = $_[0]; - return 1 if (defined($_[1]) && ref($_[1]) eq '' && $_[1] eq ''); - - $self->SUPER::write($_[1]); -} - # for graceful shutdown in PublicInbox::Daemon: sub busy () { my ($self) = @_; |