about summary refs log tree commit homepage
diff options
context:
space:
mode:
-rw-r--r--lib/PublicInbox/NNTP.pm5
-rw-r--r--public-inbox-nntpd2
2 files changed, 6 insertions, 1 deletions
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;