From 812b9991ac21cbba7d9e60cb5a9e06a9fb69351d Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Thu, 24 Sep 2015 03:37:18 +0000 Subject: [PATCH] nntpd: move busy check to NNTP package This is better encapsulated and hopefully more readable. While we're at it, check for being inside a long response, too. --- lib/PublicInbox/NNTP.pm | 5 +++++ public-inbox-nntpd | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/PublicInbox/NNTP.pm b/lib/PublicInbox/NNTP.pm index 0d0de976..52d6a64c 100644 --- a/lib/PublicInbox/NNTP.pm +++ b/lib/PublicInbox/NNTP.pm @@ -919,4 +919,9 @@ sub watch_read { $rv; } +sub busy () { + my ($self) = @_; + ($self->{rbuf} ne '' || $self->{long_res} || $self->{write_buf_size}); +} + 1; diff --git a/public-inbox-nntpd b/public-inbox-nntpd index 4c156080..70bab46f 100644 --- a/public-inbox-nntpd +++ b/public-inbox-nntpd @@ -205,7 +205,7 @@ sub worker_quit { foreach my $s (values %$dmap) { next unless ref($s) eq 'PublicInbox::NNTP'; - if ($s->{write_buf_size} || $s->{rbuf}) { + if ($s->busy) { ++$n; } else { $s->close; -- 2.50.0