diff options
author | Daniel Engberg <daniel.engberg.lists@pyret.net> | 2018-06-17 12:53:57 +0200 |
---|---|---|
committer | Daniel Engberg <daniel.engberg.lists@pyret.net> | 2018-06-17 12:57:04 +0200 |
commit | 83c2603c1db8125a4be6dfc66528a2e4db4e30dd (patch) | |
tree | f319394963eca7e10626aa76a8fcbf1d61397cab /sound/fdk-aac/patches | |
parent | 48d5f1a591987c06ccf160e6639ed1dd47841ba4 (diff) |
sound/fdk-aac: Clean up Makefile, add overflow patch
Clean up Makefile by utilizing toolchain logic
Make package pkg-config friendly
Add patch to prevent crashes due to overflow
Source: https://github.com/mstorsjo/fdk-aac/commit/a50eecf65b5ce5d4f03768c5c2cb4b492d2badad
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Diffstat (limited to 'sound/fdk-aac/patches')
-rw-r--r-- | sound/fdk-aac/patches/001-fix-overflow.patch | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/sound/fdk-aac/patches/001-fix-overflow.patch b/sound/fdk-aac/patches/001-fix-overflow.patch new file mode 100644 index 000000000..89728d91f --- /dev/null +++ b/sound/fdk-aac/patches/001-fix-overflow.patch @@ -0,0 +1,29 @@ +From a50eecf65b5ce5d4f03768c5c2cb4b492d2badad Mon Sep 17 00:00:00 2001 +From: Martin Storsjo <martin@martin.st> +Date: Fri, 4 May 2018 12:46:44 +0300 +Subject: [PATCH] Fix overflows in accumulation, fixing crashes + +This fixes github issue #83. +--- + libSBRenc/src/tran_det.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libSBRenc/src/tran_det.cpp b/libSBRenc/src/tran_det.cpp +index 0e35ec3..51d6efe 100644 +--- a/libSBRenc/src/tran_det.cpp ++++ b/libSBRenc/src/tran_det.cpp +@@ -256,12 +256,12 @@ static FIXP_DBL addLowbandEnergies(FIXP_DBL **Energies, + /* freqBandTable[LORES] has MAX_FREQ_COEFFS/2 +1 coeefs max. */ + for (ts=tran_offdiv2; ts<YBufferWriteOffset; ts++) { + for (k = 0; k < freqBandTable[0]; k++) { +- accu1 += Energies[ts][k] >> 6; ++ accu1 = fAddSaturate(accu1, Energies[ts][k] >> 6); + } + } + for (; ts<tran_offdiv2+(slots>>nrgSzShift); ts++) { + for (k = 0; k < freqBandTable[0]; k++) { +- accu2 += Energies[ts][k] >> 9; ++ accu2 = fAddSaturate(accu2, Energies[ts][k] >> 9); + } + } + |