about summary refs log tree commit homepage
path: root/lib/PublicInbox/NNTP.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2015-09-25 02:27:53 +0000
committerEric Wong <e@80x24.org>2015-09-25 02:29:06 +0000
commit561eb87f68891106a43eedf7bf054b74e52c2db8 (patch)
tree24e7637c8623e3088b51888863bb38aa9acd5e40 /lib/PublicInbox/NNTP.pm
parentd51d7261fb75b9a2c378e3d46c6c370397e44c8f (diff)
downloadpublic-inbox-561eb87f68891106a43eedf7bf054b74e52c2db8.tar.gz
Oops, we must increment our range even if we yield or
get blocked on output buffering.
Diffstat (limited to 'lib/PublicInbox/NNTP.pm')
-rw-r--r--lib/PublicInbox/NNTP.pm4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/PublicInbox/NNTP.pm b/lib/PublicInbox/NNTP.pm
index dd033e89..7e2c2abd 100644
--- a/lib/PublicInbox/NNTP.pm
+++ b/lib/PublicInbox/NNTP.pm
@@ -508,8 +508,8 @@ sub long_response ($$$$) {
                 my $err;
                 do {
                         eval { $cb->(\$beg) };
-                } until (($err = $@) || $self->{closed} || $yield ||
-                         $self->{write_buf_size} || ++$beg > $end);
+                } until (($err = $@) || $self->{closed} ||
+                         ++$beg > $end || $yield || $self->{write_buf_size});
                 ualarm(0);
 
                 if ($err || $self->{closed}) {