From af4faaf6660d02ce593e07b97d05020b44ed06e4 Mon Sep 17 00:00:00 2001 From: Chris Robinson Date: Wed, 12 May 2010 02:20:14 -0700 Subject: Use a UIntMap for the effect slot list --- Alc/ALu.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'Alc/ALu.c') diff --git a/Alc/ALu.c b/Alc/ALu.c index d2678687..a5513985 100644 --- a/Alc/ALu.c +++ b/Alc/ALu.c @@ -1409,6 +1409,7 @@ ALvoid aluMixData(ALCdevice *device, ALvoid *buffer, ALsizei size) ALfloat samp; int fpuState; ALuint i, j, c; + ALsizei e; #if defined(HAVE_FESETROUND) fpuState = fegetround(); @@ -1438,15 +1439,14 @@ ALvoid aluMixData(ALCdevice *device, ALvoid *buffer, ALsizei size) MixSomeSources(ALContext, DryBuffer, SamplesToDo); /* effect slot processing */ - ALEffectSlot = ALContext->EffectSlotList; - while(ALEffectSlot) + for(e = 0;e < ALContext->EffectSlotMap.size;e++) { + ALEffectSlot = ALContext->EffectSlotMap.array[e].value; if(ALEffectSlot->EffectState) ALEffect_Process(ALEffectSlot->EffectState, ALEffectSlot, SamplesToDo, ALEffectSlot->WetBuffer, DryBuffer); for(i = 0;i < SamplesToDo;i++) ALEffectSlot->WetBuffer[i] = 0.0f; - ALEffectSlot = ALEffectSlot->next; } ProcessContext(ALContext); } -- cgit v1.2.3