mirror of
https://github.com/openssl/openssl.git
synced 2025-03-19 19:50:42 +08:00
utils/mkdir-p: check if dir exists also after mkdir failed
with "make install -j8" it happens very often that two or more make instances are creating the same directory in parallel. As a result one instace creates the directory and second mkdir fails because the directory exists already (but it did not while testing for it earlier). Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/1204)
This commit is contained in:
parent
fe2d149119
commit
70a56b9147
@ -33,6 +33,12 @@ sub do_mkdir_p {
|
||||
do_mkdir_p($parent);
|
||||
}
|
||||
|
||||
mkdir($dir, 0777) || die "Cannot create directory $dir: $!\n";
|
||||
unless (mkdir($dir, 0777)) {
|
||||
if (-d $dir) {
|
||||
# We raced against another instance doing the same thing.
|
||||
return;
|
||||
}
|
||||
die "Cannot create directory $dir: $!\n";
|
||||
}
|
||||
print "created directory `$dir'\n";
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user