@@ -639,6 +639,8 @@ pub fn SanitizeParams(params: &mut BrotliEncoderParams) {
639
639
}
640
640
if params. bare_stream {
641
641
params. byte_align = true ;
642
+ } else if !params. appendable {
643
+ params. byte_align = false ;
642
644
}
643
645
}
644
646
@@ -2268,16 +2270,8 @@ fn EncodeData<Alloc: BrotliAlloc,
2268
2270
}
2269
2271
let mut catable_header_size = 0 ;
2270
2272
if let IsFirst :: NothingWritten = s. is_first_mb {
2271
- if s. params . magic_number || ( s. params . byte_align && !s. params . catable && !s. params . appendable && !s. params . bare_stream ) {
2272
- if s. params . magic_number {
2273
- BrotliWriteMetadataMetaBlock ( & s. params , & mut storage_ix, ( * s) . storage_ . slice_mut ( ) ) ;
2274
- } else {
2275
- // magic and catable have their own headers that cause byte alignment,
2276
- // and aligning the compressed data is pointless in appendable mode, so
2277
- // in those cases we don't need to force it here
2278
- BrotliStoreSyncMetaBlock ( & mut storage_ix, ( * s) . storage_ . slice_mut ( ) ) ;
2279
- }
2280
- // XXX What does this do?
2273
+ if s. params . magic_number {
2274
+ BrotliWriteMetadataMetaBlock ( & s. params , & mut storage_ix, ( * s) . storage_ . slice_mut ( ) ) ;
2281
2275
( * s) . last_bytes_ = ( * s) . storage_ . slice ( ) [ ( ( storage_ix >> 3i32 ) as ( usize ) ) ] as u16 | (
2282
2276
( ( * s) . storage_ . slice ( ) [ 1 + ( ( storage_ix >> 3i32 ) as ( usize ) ) ] as u16 ) <<8 ) ;
2283
2277
( * s) . last_bytes_bits_ = ( storage_ix & 7u32 as ( usize ) ) as ( u8 ) ;
0 commit comments