Blob Blame History Raw
diff -up Archive-Zip-1.30/lib/Archive/Zip/Member.pm.bug Archive-Zip-1.30/lib/Archive/Zip/Member.pm
--- Archive-Zip-1.30/lib/Archive/Zip/Member.pm.bug	2009-06-30 13:51:10.000000000 +0200
+++ Archive-Zip-1.30/lib/Archive/Zip/Member.pm	2012-03-19 13:13:11.028294275 +0100
@@ -159,13 +159,13 @@ sub bitFlag {
 
     # Set General Purpose Bit Flags according to the desiredCompressionLevel setting
     if ( $self->desiredCompressionLevel == 1 || $self->desiredCompressionLevel == 2 ) {
-        $self->{'bitFlag'} = DEFLATING_COMPRESSION_FAST;
+        $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;
+        $self->{'bitFlag'} |= DEFLATING_COMPRESSION_NORMAL;
     } elsif ( $self->desiredCompressionLevel == 8 || $self->desiredCompressionLevel == 9 ) {
-        $self->{'bitFlag'} = DEFLATING_COMPRESSION_MAXIMUM;
+        $self->{'bitFlag'} |= DEFLATING_COMPRESSION_MAXIMUM;
     }
     $self->{'bitFlag'};
 }