about summary refs log tree commit homepage
path: root/lib/PublicInbox/Spawn.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/PublicInbox/Spawn.pm')
-rw-r--r--lib/PublicInbox/Spawn.pm5
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/PublicInbox/Spawn.pm b/lib/PublicInbox/Spawn.pm
index 00e6829e..fe7aa0a8 100644
--- a/lib/PublicInbox/Spawn.pm
+++ b/lib/PublicInbox/Spawn.pm
@@ -358,10 +358,9 @@ sub spawn ($;$$) {
         my $f = which($cmd->[0]) // die "$cmd->[0]: command not found\n";
         my @env;
         $opts ||= {};
-
-        my %env = $env ? (%ENV, %$env) : %ENV;
+        my %env = (%ENV, $env ? %$env : ());
         while (my ($k, $v) = each %env) {
-                push @env, "$k=$v";
+                push @env, "$k=$v" if defined($v);
         }
         my $redir = [];
         for my $child_fd (0..2) {