diff -up Archive-Zip-1.39/lib/Archive/Zip/Member.pm.orig Archive-Zip-1.39/lib/Archive/Zip/Member.pm --- Archive-Zip-1.39/lib/Archive/Zip/Member.pm.orig 2014-10-22 13:05:47.852592106 +0200 +++ Archive-Zip-1.39/lib/Archive/Zip/Member.pm 2014-10-22 13:10:28.151696108 +0200 @@ -159,16 +159,16 @@ 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; } if ($Archive::Zip::UNICODE) {