position_channels wasn't reset in _Eff_PositionDeinit(), so closing the mixer,
authorRyan C. Gordon <icculus@icculus.org>
Mon, 04 Feb 2008 17:10:08 +0000
changeset 379c300eee1d1e4
parent 378 d793a6a0cebb
child 380 161aa45d00c2
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
     1.1 --- a/effect_position.c	Thu Jan 03 06:08:53 2008 +0000
     1.2 +++ b/effect_position.c	Mon Feb 04 17:10:08 2008 +0000
     1.3 @@ -86,6 +86,8 @@
     1.4          free(pos_args_array[i]);
     1.5      }
     1.6  
     1.7 +    position_channels = 0;
     1.8 +
     1.9      free(pos_args_global);
    1.10      pos_args_global = NULL;
    1.11      free(pos_args_array);