bin/imager.save
changeset 118 8c2cc26d45fc
parent 109 d199ec625af0
child 125 41872269ca6f
--- a/bin/imager.save	Mon Jun 18 16:55:10 2012 +0200
+++ b/bin/imager.save	Mon Aug 27 15:51:22 2012 +0200
@@ -16,18 +16,17 @@
 use Pod::Usage;
 use Imager 0.1;
 
-use constant KiB      => 1024;
-use constant MiB      => 1024 * KiB;
-use constant GiB      => 1024 * MiB;
-use constant BS       => 4 * MiB;
-use constant DATEFMT  => "%Y-%m-%dT%H:%M:%SZ";
-use constant CIPHER   => "aes-128-cbc";
+use constant KiB     => 1024;
+use constant MiB     => 1024 * KiB;
+use constant GiB     => 1024 * MiB;
+use constant BS      => 4 * MiB;
+use constant DATEFMT => "%Y-%m-%dT%H:%M:%SZ";
+use constant CIPHER  => "aes-128-cbc";
 
 sub get_devsize;
 sub get_devname;
 sub save;
 
-
 $SIG{INT} = sub { die "Got INT\n" };
 
 my %o = (
@@ -53,7 +52,7 @@
         "c|comment=s"   => \$o{comment},
         "z|compress:i"  => sub { $o{compress} = $_[1] ? $_[1] : Z_BEST_SPEED },
         "p|pass=s"      => \$o{pass},
-	"now=i"		=> \$o{now},
+        "now=i"         => \$o{now},
         "b|blocksize=s" => sub {
             given ($_[1]) {
                 when (/(\d+)G/i) { $o{blocksize} = $1 * GiB };
@@ -83,7 +82,7 @@
 
     my $rc = 0;
     while (wait != -1) {
-	$rc = ($? >> 8) if ($? >> 8) > $rc;
+        $rc = ($? >> 8) if ($? >> 8) > $rc;
     }
     exit $rc;
 
@@ -178,29 +177,28 @@
             }
             binmode($out);
 
-           
-                my $bufref = \$buffer;
-                if ($o{compress}) {
-                    my $zbuffer;
-                    gzip(
-                        \$buffer  => \$zbuffer,
-                        -Minimal  => 1,
-                        -Level    => Z_BEST_SPEED,
-                        -Strategy => Z_FILTERED
-                    ) or die $GzipError;
-                    if (length($zbuffer) / length($buffer) < 0.9) {
-                        $bufref = \$zbuffer;
-                        $ext    = ".gz$ext";
-                    }
+            my $bufref = \$buffer;
+            if ($o{compress}) {
+                my $zbuffer;
+                gzip(
+                    \$buffer  => \$zbuffer,
+                    -Minimal  => 1,
+                    -Level    => Z_BEST_SPEED,
+                    -Strategy => Z_FILTERED
+                ) or die $GzipError;
+                if (length($zbuffer) / length($buffer) < 0.9) {
+                    $bufref = \$zbuffer;
+                    $ext    = ".gz$ext";
                 }
+            }
 
-		#for(my $todo = length $$bufref;
-		#    $todo -= syswrite $out => $$bufref, $todo, -$todo; 1)
-		#{
-		#}
-		syswrite $out => $$bufref;
-            
-            close($out) or die $!;
+            #for(my $todo = length $$bufref;
+            #    $todo -= syswrite $out => $$bufref, $todo, -$todo; 1)
+            #{
+            #}
+            syswrite $out => $$bufref or die "$0: write: $!\n";
+            close($out) or die "$0: close output file: $!";
+
             rename($out => "$data/$file$ext");
             $index{BLOCKS}[$blknr] .= " *";
             $stats{written}++;