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