* checkin with 3.2.0beta0 release header
[BackupPC.git] / lib / BackupPC / Attrib.pm
index 8b6cbc2..ca9df37 100644 (file)
@@ -30,7 +30,7 @@
 #
 #========================================================================
 #
-# Version 3.1.0beta0, released 3 Sep 2007.
+# Version 3.2.0beta0, released 5 April 2009.
 #
 # See http://backuppc.sourceforge.net.
 #
@@ -214,9 +214,9 @@ sub read
     }
     (my $magic, $data) = unpack("N a*", $data);
     if ( $magic != $a->{type} ) {
-       $a->{_errStr} = sprintf("Wrong magic number in $file"
+       $a->{_errStr} = sprintf("Wrong magic number in %s"
                                . " (got 0x%x, expected 0x%x)",
-                                   $magic, $a->{type});
+                                   $file, $magic, $a->{type});
        $fd->close;
        return;
     }
@@ -304,7 +304,13 @@ sub write
     my($data) = $a->writeData;
 
     $file = $a->fileName($dir, $file);
-    mkpath($dir, 0, 0777) if ( !-d $dir );
+    if ( !-d $dir ) {
+        eval { mkpath($dir, 0, 0777) };
+        if ( $@ ) {
+            $a->{_errStr} = "Can't create directory $dir";
+            return;
+        }
+    }
     my $fd = BackupPC::FileZIO->open($file, 1, $a->{compress});
     if ( !$fd ) {
        $a->{_errStr} = "Can't open/write to $file";