Skip to content

Commit

Permalink
Remove race conditions around mkdir.
Browse files Browse the repository at this point in the history
  • Loading branch information
pjcj committed Oct 21, 2011
1 parent 6d31b18 commit 2fc3325
Show file tree
Hide file tree
Showing 5 changed files with 16 additions and 13 deletions.
4 changes: 2 additions & 2 deletions Makefile.PL
Expand Up @@ -81,9 +81,9 @@ print "Writing tests ........ ";

for my $d (qw( t t/e2e ))
{
unless (-d $d)
unless (mkdir $d)
{
mkdir $d or die "Cannot mkdir $: $!";
die "Cannot mkdir $d: $!" unless -d $d;
}
}

Expand Down
8 changes: 4 additions & 4 deletions lib/Devel/Cover.pm
Expand Up @@ -348,9 +348,9 @@ sub import
$Dir = $1 if Cwd::getcwd() =~ /(.*)/;
}

unless (-d $DB)
unless (mkdir $DB, 0700)
{
mkdir $DB, 0700 or die "Can't mkdir $DB: $!";
die "Can't mkdir $DB: $!" unless -d $DB;
}
$DB = $1 if abs_path($DB) =~ /(.*)/;
Devel::Cover::DB->delete($DB) unless $Merge;
Expand Down Expand Up @@ -770,9 +770,9 @@ sub _report
);

my $dbrun = "$DB/runs";
unless (-d $dbrun)
unless (mkdir $dbrun, 0700)
{
mkdir $dbrun, 0700 or croak "Can't mkdir $dbrun: $!\n";
die "Can't mkdir $dbrun $!" unless -d $dbrun;
}
$dbrun .= "/$run";

Expand Down
4 changes: 2 additions & 2 deletions lib/Devel/Cover/DB.pm
Expand Up @@ -79,9 +79,9 @@ sub write
$self->{db} = shift if @_;

croak "No db specified" unless length $self->{db};
unless (-d $self->{db})
unless (mkdir $self->{db}, 0700)
{
mkdir $self->{db}, 0700 or croak "Can't mkdir $self->{db}: $!\n";
croak "Can't mkdir $self->{db}: $!\n" unless -d $self->{db};
}
$self->validate_db;

Expand Down
8 changes: 4 additions & 4 deletions lib/Devel/Cover/DB/Structure.pm
Expand Up @@ -88,9 +88,9 @@ sub AUTOLOAD
sub debuglog {
my $self = shift;
my $dir = "$self->{base}/debuglog";
unless (-d $dir)
unless (mkdir $dir, 0700)
{
mkdir $dir, 0700 or confess "Can't mkdir $dir: $!";
confess "Can't mkdir $dir: $!" unless -d $dir;
}

local $\;
Expand Down Expand Up @@ -271,9 +271,9 @@ sub write
my ($dir) = @_;
# print STDERR Dumper $self;
$dir .= "/structure";
unless (-d $dir)
unless (mkdir $dir, 0700)
{
mkdir $dir, 0700 or croak "Can't mkdir $dir: $!\n";
confess "Can't mkdir $dir: $!" unless -d $dir;
}
for my $file (sort keys %{$self->{f}})
{
Expand Down
5 changes: 4 additions & 1 deletion lib/Devel/Cover/Test.pm
Expand Up @@ -76,7 +76,10 @@ sub get_params
$self->{criteria} =~ s/-\w+//g;
$self->{cover_db} = "$Devel::Cover::Inc::Base/t/e2e/"
. "cover_db_$self->{test}/";
mkdir $self->{cover_db};
unless (mkdir $self->{cover_db})
{
die "Can't mkdir $self->{cover_db}: $!" unless -d $self->{cover_db};
}
$self->{cover_parameters} = join(" ", map "-coverage $_",
split " ", $self->{criteria})
. " -report text " . $self->{cover_db};
Expand Down

0 comments on commit 2fc3325

Please sign in to comment.