aboutsummaryrefslogtreecommitdiffstats
path: root/alc/alu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'alc/alu.cpp')
-rw-r--r--alc/alu.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/alc/alu.cpp b/alc/alu.cpp
index f312c161..48641f93 100644
--- a/alc/alu.cpp
+++ b/alc/alu.cpp
@@ -1579,11 +1579,11 @@ void CalcSourceParams(ALvoice *voice, ALCcontext *context, bool force)
AtomicReplaceHead(context->mFreeVoiceProps, props);
}
- if((voice->mProps.mSpatializeMode == SpatializeAuto && voice->mFmtChannels == FmtMono) ||
- voice->mProps.mSpatializeMode == SpatializeOn)
- CalcAttnSourceParams(voice, &voice->mProps, context);
- else
+ if(voice->mProps.DirectChannels || voice->mProps.mSpatializeMode == SpatializeOff
+ || (voice->mProps.mSpatializeMode == SpatializeAuto && voice->mFmtChannels != FmtMono))
CalcNonAttnSourceParams(voice, &voice->mProps, context);
+ else
+ CalcAttnSourceParams(voice, &voice->mProps, context);
}