aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/ALc.c
diff options
context:
space:
mode:
Diffstat (limited to 'Alc/ALc.c')
-rw-r--r--Alc/ALc.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/Alc/ALc.c b/Alc/ALc.c
index 0a025bf6..5af83f70 100644
--- a/Alc/ALc.c
+++ b/Alc/ALc.c
@@ -1414,6 +1414,7 @@ static ALCboolean UpdateDeviceParams(ALCdevice *device, const ALCint *attrList)
ALCcontext *context = device->Contexts[i];
ALsizei pos;
+ context->UpdateSources = AL_FALSE;
for(pos = 0;pos < context->EffectSlotMap.size;pos++)
{
ALeffectslot *slot = context->EffectSlotMap.array[pos].value;
@@ -1425,6 +1426,7 @@ static ALCboolean UpdateDeviceParams(ALCdevice *device, const ALCint *attrList)
device->Flags &= ~DEVICE_RUNNING;
return ALC_FALSE;
}
+ slot->NeedsUpdate = AL_FALSE;
ALEffect_Update(slot->EffectState, context, &slot->effect);
}
@@ -1441,10 +1443,9 @@ static ALCboolean UpdateDeviceParams(ALCdevice *device, const ALCint *attrList)
source->Send[s].WetFilter.filter = 0;
s++;
}
- ALsource_Update(source, context);
source->NeedsUpdate = AL_FALSE;
+ ALsource_Update(source, context);
}
- context->UpdateSources = AL_FALSE;
}
UnlockDevice(device);