From 72dfac803728571c30e7ab8caf005229bc1f39f8 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 21 Mar 2023 23:07:20 +0000 Subject: test_common: create_inbox: use `$!' properly on mkdir failure stat(2) may fail and set `$!', too, so we must stash it, first. --- lib/PublicInbox/TestCommon.pm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'lib/PublicInbox/TestCommon.pm') diff --git a/lib/PublicInbox/TestCommon.pm b/lib/PublicInbox/TestCommon.pm index 5807105a..ed28ac48 100644 --- a/lib/PublicInbox/TestCommon.pm +++ b/lib/PublicInbox/TestCommon.pm @@ -709,9 +709,9 @@ sub create_inbox ($$;@) { my ($db) = (PublicInbox::Import::default_branch() =~ m!([^/]+)\z!); my $dir = "t/data-gen/$base.$ident-$db"; my $new = !-d $dir; - if ($new) { - mkdir $dir; # may race - -d $dir or BAIL_OUT "$dir could not be created: $!"; + if ($new && !mkdir($dir)) { + my $err = $!; + -d $dir or xbail "mkdir($dir): $err"; } my $lk = bless { lock_path => "$dir/creat.lock" }, 'PublicInbox::Lock'; $opt{inboxdir} = File::Spec->rel2abs($dir); -- cgit v1.2.3-24-ge0c7