about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2018-08-01 11:43:32 -0500
committerEric Wong <e@80x24.org>2018-08-02 02:18:07 +0000
commit9294716ecc685c7b21ec21e2dbbbeb2c8f62c477 (patch)
treea6c417a32936d0141742af0bafc15627fc1507ed
parent8e0e850859fc9572cf201111728eaa621eace451 (diff)
downloadpublic-inbox-9294716ecc685c7b21ec21e2dbbbeb2c8f62c477.tar.gz
While working on one of the tests I did:
	my $im = PublicInbox::V2Writable->new($ibx, 1);
	my $im0 = $im->importer();
	$im->add($mime);

Which resulted in a warning of the use of an undefined value from
atfork_child, and the test failing nastily.  Inspection of the code
reveals this can happen anytime gfi_start has not been called.

So just fix atfork_child to skip closing file descriptors that have
not yet been setup.

Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
-rw-r--r--lib/PublicInbox/Import.pm1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/PublicInbox/Import.pm b/lib/PublicInbox/Import.pm
index 4e3b4c55..bfa7a805 100644
--- a/lib/PublicInbox/Import.pm
+++ b/lib/PublicInbox/Import.pm
@@ -451,6 +451,7 @@ sub done {
 sub atfork_child {
         my ($self) = @_;
         foreach my $f (qw(in out)) {
+                next unless defined($self->{$f});
                 close $self->{$f} or die "failed to close import[$f]: $!\n";
         }
 }