From e9e95b1899e0d033ab38dc85d5598ec71dcc2b58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?kleines=20Filmr=C3=B6llchen?= Date: Tue, 27 Jun 2023 22:01:24 +0200 Subject: [PATCH] LibAudio: Fix escaped partitions A missing sign extension and a wrong data type broke these before. --- Userland/Libraries/LibAudio/FlacLoader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Userland/Libraries/LibAudio/FlacLoader.cpp b/Userland/Libraries/LibAudio/FlacLoader.cpp index 7780ef1031..bab2308aaf 100644 --- a/Userland/Libraries/LibAudio/FlacLoader.cpp +++ b/Userland/Libraries/LibAudio/FlacLoader.cpp @@ -923,7 +923,7 @@ ALWAYS_INLINE ErrorOr, LoaderError> FlacLoaderPlugin::decode_rice_pa if (k == (1 << partition_type) - 1) { u8 unencoded_bps = TRY(bit_input.read_bits(5)); for (size_t r = 0; r < residual_sample_count; ++r) { - rice_partition[r] = TRY(bit_input.read_bits(unencoded_bps)); + rice_partition[r] = sign_extend(TRY(bit_input.read_bits(unencoded_bps)), unencoded_bps); } } else { for (size_t r = 0; r < residual_sample_count; ++r) {