lib/PublicInbox/Spawn.pm | 12 +----------- t/spawn.t | 10 ---------- diff --git a/lib/PublicInbox/Spawn.pm b/lib/PublicInbox/Spawn.pm index b946a66373b84faedaef1a71d02329a2cf8587fe..6493ad387cdbcb915ca71fcbdc325f0ce673f768 100644 --- a/lib/PublicInbox/Spawn.pm +++ b/lib/PublicInbox/Spawn.pm @@ -193,17 +193,7 @@ defined $f or die "$cmd->[0]: command not found\n"; my @env; $opts ||= {}; - my %env = $opts->{-env} ? () : %ENV; - if ($env) { - foreach my $k (keys %$env) { - my $v = $env->{$k}; - if (defined $v) { - $env{$k} = $v; - } else { - delete $env{$k}; - } - } - } + my %env = $env ? (%ENV, %$env) : %ENV; while (my ($k, $v) = each %env) { push @env, "$k=$v"; } diff --git a/t/spawn.t b/t/spawn.t index ebebfb57eafc078577c4b79bc6021fce8d6c4846..2e4091574e1be4bcbafd91ff851f0938f60557ef 100644 --- a/t/spawn.t +++ b/t/spawn.t @@ -39,16 +39,6 @@ is($?, 0, 'sh exited successfully'); } { - my ($r, $w); - pipe $r, $w or die "pipe failed: $!"; - my $pid = spawn(['env'], {}, { -env => 1, 1 => fileno($w) }); - close $w or die "close pipe[1] failed: $!"; - ok(!defined(<$r>), 'read stdout of spawned from pipe'); - is(waitpid($pid, 0), $pid, 'waitpid succeeds on spawned process'); - is($?, 0, 'env(1) exited successfully'); -} - -{ my $fh = popen_rd([qw(echo hello)]); ok(fileno($fh) >= 0, 'tied fileno works'); my $l = <$fh>;