]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/Emergency.pm
emergency: create full path to PI_EMERGENCY
[public-inbox.git] / lib / PublicInbox / Emergency.pm
index 02900bb17d11bb4f34c85546dee47ba65b99dd6b..b705e776e676c874ffc7ad0f6c00753bbe1e6e03 100644 (file)
@@ -12,11 +12,13 @@ use IO::Handle; # ->flush, ->autoflush
 sub new {
        my ($class, $dir) = @_;
 
-       -d $dir or mkdir($dir) or die "failed to mkdir($dir): $!\n";
        foreach (qw(new tmp cur)) {
                my $d = "$dir/$_";
                next if -d $d;
-               -d $d or mkdir($d) or die "failed to mkdir($d): $!\n";
+               require File::Path;
+               if (!File::Path::mkpath($d) && !-d $d) {
+                       die "failed to mkpath($d): $!\n";
+               }
        }
        bless { dir => $dir, files => {}, t => 0, cnt => 0, pid => $$ }, $class;
 }