]> Sergey Matveev's repositories - public-inbox.git/commitdiff
spawn: remove `Blocking' flag handling
authorEric Wong <e@80x24.org>
Mon, 24 Jun 2019 02:52:24 +0000 (02:52 +0000)
committerEric Wong <e@80x24.org>
Mon, 24 Jun 2019 05:26:26 +0000 (05:26 +0000)
Instead, the O_NONBLOCK flag is set by PublicInbox::HTTPD::Async;
and we won't be setting it elsewhere.

lib/PublicInbox/Spawn.pm
t/spawn.t

index 66b916dfbc72d60c28c57cdddd63a88d1b8d7966..9161bb5b2f8dab4f1f50fe4817535d87028907c7 100644 (file)
@@ -229,8 +229,6 @@ sub popen_rd {
        my ($cmd, $env, $opts) = @_;
        pipe(my ($r, $w)) or die "pipe: $!\n";
        $opts ||= {};
-       my $blocking = $opts->{Blocking};
-       IO::Handle::blocking($r, $blocking) if defined $blocking;
        $opts->{1} = fileno($w);
        my $pid = spawn($cmd, $env, $opts);
        return unless defined $pid;
index 884042824265b59717d4ca1bc9a6096f50f0807a..1d71b26df1f342b5c1faca7f0ae1ceeee06e53d2 100644 (file)
--- a/t/spawn.t
+++ b/t/spawn.t
@@ -81,17 +81,6 @@ use PublicInbox::Spawn qw(which spawn popen_rd);
        isnt($?, 0, '$? set properly: '.$?);
 }
 
-{
-       my ($fh, $pid) = popen_rd([qw(sleep 60)], undef, { Blocking => 0 });
-       ok(defined $pid && $pid > 0, 'returned pid when array requested');
-       is(kill(0, $pid), 1, 'child process is running');
-       ok(!defined(sysread($fh, my $buf, 1)) && $!{EAGAIN},
-          'sysread returned quickly with EAGAIN');
-       is(kill(9, $pid), 1, 'child process killed early');
-       is(waitpid($pid, 0), $pid, 'child process reapable');
-       isnt($?, 0, '$? set properly: '.$?);
-}
-
 SKIP: {
        eval {
                require BSD::Resource;