mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 00:07:36 +00:00
LibAudio: Fix escaped partitions
A missing sign extension and a wrong data type broke these before.
This commit is contained in:
parent
69c42eaf8b
commit
e9e95b1899
1 changed files with 1 additions and 1 deletions
|
@ -923,7 +923,7 @@ ALWAYS_INLINE ErrorOr<Vector<i64>, LoaderError> FlacLoaderPlugin::decode_rice_pa
|
||||||
if (k == (1 << partition_type) - 1) {
|
if (k == (1 << partition_type) - 1) {
|
||||||
u8 unencoded_bps = TRY(bit_input.read_bits<u8>(5));
|
u8 unencoded_bps = TRY(bit_input.read_bits<u8>(5));
|
||||||
for (size_t r = 0; r < residual_sample_count; ++r) {
|
for (size_t r = 0; r < residual_sample_count; ++r) {
|
||||||
rice_partition[r] = TRY(bit_input.read_bits<u8>(unencoded_bps));
|
rice_partition[r] = sign_extend(TRY(bit_input.read_bits<u32>(unencoded_bps)), unencoded_bps);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for (size_t r = 0; r < residual_sample_count; ++r) {
|
for (size_t r = 0; r < residual_sample_count; ++r) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue