about summary refs log tree commit homepage
path: root/lib/PublicInbox/Spamcheck/Spamc.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2023-09-26 07:44:40 +0000
committerEric Wong <e@80x24.org>2023-09-26 21:02:48 +0000
commit72ccceeb02542dda09b8a641c2bd17dd74440cc2 (patch)
tree86e365e53e986624a7d623e164c3e60f46a53470 /lib/PublicInbox/Spamcheck/Spamc.pm
parent344897c0b27e061e41f2660f3c7a3de9a7b78452 (diff)
downloadpublic-inbox-72ccceeb02542dda09b8a641c2bd17dd74440cc2.tar.gz
It's basically the `system' perlop with support for env overrides,
redirects, chdir, rlimits, and setpgid support.
Diffstat (limited to 'lib/PublicInbox/Spamcheck/Spamc.pm')
-rw-r--r--lib/PublicInbox/Spamcheck/Spamc.pm6
1 files changed, 2 insertions, 4 deletions
diff --git a/lib/PublicInbox/Spamcheck/Spamc.pm b/lib/PublicInbox/Spamcheck/Spamc.pm
index 67278917..726866c8 100644
--- a/lib/PublicInbox/Spamcheck/Spamc.pm
+++ b/lib/PublicInbox/Spamcheck/Spamc.pm
@@ -4,7 +4,7 @@
 # Default spam filter class for wrapping spamc(1)
 package PublicInbox::Spamcheck::Spamc;
 use v5.12;
-use PublicInbox::Spawn qw(popen_rd spawn);
+use PublicInbox::Spawn qw(popen_rd run_wait);
 use IO::Handle;
 use Fcntl qw(SEEK_SET);
 
@@ -47,9 +47,7 @@ sub _learn {
         $rdr->{0} = _msg_to_fh($self, $msg);
         $rdr->{1} ||= $self->_devnull;
         $rdr->{2} ||= $self->_devnull;
-        my $pid = spawn($self->{$field}, undef, $rdr);
-        waitpid($pid, 0);
-        !$?;
+        0 == run_wait($self->{$field}, undef, $rdr);
 }
 
 sub _devnull {