From b9b1b4d868de5ddead951f40a29c8cdbc3a8fe73 Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Fri, 27 Oct 2006 20:18:24 +0000 Subject: [PATCH] Fix for buffer overflow in audio code, when feeding a device that needs resampling. Fixes Bugzilla #298. --- src/audio/SDL_audio.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/audio/SDL_audio.c b/src/audio/SDL_audio.c index bac4847ff..21f05b28e 100644 --- a/src/audio/SDL_audio.c +++ b/src/audio/SDL_audio.c @@ -590,7 +590,8 @@ int SDL_OpenAudio(SDL_AudioSpec *desired, SDL_AudioSpec *obtained) return(-1); } if ( audio->convert.needed ) { - audio->convert.len = desired->size; + audio->convert.len = (int) ( ((double) desired->size) / + audio->convert.len_ratio ); audio->convert.buf =(Uint8 *)SDL_AllocAudioMem( audio->convert.len*audio->convert.len_mult); if ( audio->convert.buf == NULL ) {