diff options
author | Chris Robinson <[email protected]> | 2015-10-23 22:34:46 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2015-10-24 00:47:58 -0700 |
commit | 2a62b3853082169e665d5eee2121ff34cfe0abc1 (patch) | |
tree | ae02e0c33a92d806a075a693040515c82eb4cb15 /Alc | |
parent | 714354caeef1927c3b5ecd132d7cc090e7672106 (diff) |
Update filter histories even when they're not used
If the filter properties are continually updated, and the HF or LF gain goes
from <1, to 1, and later back to <1, the history shouldn't hold stale values
from before it was at 1.
Diffstat (limited to 'Alc')
-rw-r--r-- | Alc/mixer.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Alc/mixer.c b/Alc/mixer.c index e8b94b17..4917477a 100644 --- a/Alc/mixer.c +++ b/Alc/mixer.c @@ -260,12 +260,16 @@ static const ALfloat *DoFilters(ALfilterState *lpfilter, ALfilterState *hpfilter switch(type) { case AF_None: + ALfilterState_processPassthru(lpfilter, src, numsamples); + ALfilterState_processPassthru(hpfilter, src, numsamples); break; case AF_LowPass: ALfilterState_process(lpfilter, dst, src, numsamples); + ALfilterState_processPassthru(hpfilter, dst, numsamples); return dst; case AF_HighPass: + ALfilterState_processPassthru(lpfilter, src, numsamples); ALfilterState_process(hpfilter, dst, src, numsamples); return dst; |