From 7a50afc708f340922c3a639a081b27bdd41bf4e4 Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Mon, 4 Feb 2008 17:10:08 +0000 Subject: [PATCH] position_channels wasn't reset in _Eff_PositionDeinit(), so closing the mixer, restarting it, and setting a position on an arbitrary channel could dereference a bogus pointer. --- effect_position.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/effect_position.c b/effect_position.c index d5f4237f..24c2ed47 100644 --- a/effect_position.c +++ b/effect_position.c @@ -86,6 +86,8 @@ void _Eff_PositionDeinit(void) free(pos_args_array[i]); } + position_channels = 0; + free(pos_args_global); pos_args_global = NULL; free(pos_args_array);