BackupPc crea dei files ZIP corrotti in Debian Squeeze

From RVM Wiki
Jump to navigation Jump to search

Se si cerca di scaricare un archivio zippato da BackupPc in Debian Squeeze, questo risluterà corrotto.

Occorre applicare questo patch:

vi /tmp/Member.pm.diff
--- Member.pm   2009-06-30 04:51:10.000000000 -0700
+++ Member.pm   2010-02-20 16:49:32.000000000 -0800
@@ -157,15 +157,17 @@
 sub bitFlag {
     my $self = shift;

-    # Set General Purpose Bit Flags according to the desiredCompressionLevel setting
-    if ( $self->desiredCompressionLevel == 1 || $self->desiredCompressionLevel == 2 ) {
-        $self->{'bitFlag'} = DEFLATING_COMPRESSION_FAST;
-    } elsif ( $self->desiredCompressionLevel == 3 || $self->desiredCompressionLevel == 4
-          || $self->desiredCompressionLevel == 5 || $self->desiredCompressionLevel == 6
-          || $self->desiredCompressionLevel == 7 ) {
-        $self->{'bitFlag'} = DEFLATING_COMPRESSION_NORMAL;
-    } elsif ( $self->desiredCompressionLevel == 8 || $self->desiredCompressionLevel == 9 ) {
-        $self->{'bitFlag'} = DEFLATING_COMPRESSION_MAXIMUM;
+    if ( @_ ) {
+        # Set General Purpose Bit Flags according to the desiredCompressionLevel setting
+        if ( $self->desiredCompressionLevel == 1 || $self->desiredCompressionLevel == 2 ) {
+            $self->{'bitFlag'} = DEFLATING_COMPRESSION_FAST;
+        } elsif ( $self->desiredCompressionLevel == 3 || $self->desiredCompressionLevel == 4
+              || $self->desiredCompressionLevel == 5 || $self->desiredCompressionLevel == 6
+              || $self->desiredCompressionLevel == 7 ) {
+            $self->{'bitFlag'} = DEFLATING_COMPRESSION_NORMAL;
+        } elsif ( $self->desiredCompressionLevel == 8 || $self->desiredCompressionLevel == 9 ) {
+            $self->{'bitFlag'} = DEFLATING_COMPRESSION_MAXIMUM;
+        }
     }
     $self->{'bitFlag'};
 }
cd /usr/share/perl5/Archive/Zip
sudo patch -p0 </tmp/Member.pm.diff 

Riferimenti