]> git.ipfire.org Git - thirdparty/xz.git/commitdiff
liblzma: Omit an unneeded array from the x86 filter
authorLasse Collin <lasse.collin@tukaani.org>
Mon, 6 May 2024 20:00:09 +0000 (23:00 +0300)
committerLasse Collin <lasse.collin@tukaani.org>
Mon, 6 May 2024 20:00:09 +0000 (23:00 +0300)
Fixes: 6aa2a6deeba04808a0fe4461396e7fb70277f3d4
src/liblzma/simple/x86.c

index a5d33264e24226624bc1ce89c327e62bf66c5f07..f216231f2d12e9c05a3bf2019ac384a1851af9df 100644 (file)
@@ -26,9 +26,6 @@ static size_t
 x86_code(void *simple_ptr, uint32_t now_pos, bool is_encoder,
                uint8_t *buffer, size_t size)
 {
-       static const bool MASK_TO_ALLOWED_STATUS[5]
-                       = { true, true, true, false, true };
-
        static const uint32_t MASK_TO_BIT_NUMBER[5] = { 0, 1, 2, 2, 3 };
 
        lzma_simple_x86 *simple = simple_ptr;
@@ -67,7 +64,7 @@ x86_code(void *simple_ptr, uint32_t now_pos, bool is_encoder,
                b = buffer[buffer_pos + 4];
 
                if (Test86MSByte(b) && (prev_mask >> 1) <= 4
-                       && MASK_TO_ALLOWED_STATUS[(prev_mask >> 1)]) {
+                       && (prev_mask >> 1) != 3) {
 
                        uint32_t src = ((uint32_t)(b) << 24)
                                | ((uint32_t)(buffer[buffer_pos + 3]) << 16)