[PATCH] libFLAC: fix more problems with new window functions

Martijn van Beurden mvanb1 at gmail.com
Sun Nov 16 06:09:54 PST 2014


This fixes two problems with handling of out-of-bounds arguments
for the window functions, one of which involving an infinite loop
---
 src/libFLAC/window.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/libFLAC/window.c b/src/libFLAC/window.c
index 42772e8..947a7d3 100644
--- a/src/libFLAC/window.c
+++ b/src/libFLAC/window.c
@@ -215,9 +215,9 @@ void FLAC__window_partial_tukey(FLAC__real *window, const FLAC__int32 L, const F
 	FLAC__int32 Np, n, i;
 
 	if (p <= 0.0f)
-		FLAC__window_partial_tukey(window, L, 0.01f, start, end);
+		FLAC__window_partial_tukey(window, L, 0.05f, start, end);
 	else if (p >= 1.0f)
-		FLAC__window_partial_tukey(window, L, 1.0f, start, end);
+		FLAC__window_partial_tukey(window, L, 0.95f, start, end);
 	else {
 
 		Np = (FLAC__int32)(p / 2.0f * N);
@@ -242,9 +242,9 @@ void FLAC__window_punchout_tukey(FLAC__real *window, const FLAC__int32 L, const
 	FLAC__int32 Ns, Ne, n, i;
 
 	if (p <= 0.0f)
-		FLAC__window_partial_tukey(window, L, 0.01f, start, end);
+		FLAC__window_punchout_tukey(window, L, 0.05f, start, end);
 	else if (p >= 1.0f)
-		FLAC__window_partial_tukey(window, L, 1.0f, start, end);
+		FLAC__window_punchout_tukey(window, L, 0.95f, start, end);
 	else {
 
 		Ns = (FLAC__int32)(p / 2.0f * start_n);
-- 
1.9.1


--------------060203080802070708040600--


More information about the flac-dev mailing list