From 23108dcc091d47ed40269baf041cd36945ba86a2 Mon Sep 17 00:00:00 2001 From: Brian Matzon Date: Fri, 3 Sep 2004 06:02:33 +0000 Subject: [PATCH] update cache fields --- .../common/fmod3/org_lwjgl_fmod3_FSound.cpp | 22 ++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/native/common/fmod3/org_lwjgl_fmod3_FSound.cpp b/src/native/common/fmod3/org_lwjgl_fmod3_FSound.cpp index 2ce88ea6..9bb97292 100644 --- a/src/native/common/fmod3/org_lwjgl_fmod3_FSound.cpp +++ b/src/native/common/fmod3/org_lwjgl_fmod3_FSound.cpp @@ -119,7 +119,27 @@ JNIEXPORT jboolean JNICALL Java_org_lwjgl_fmod3_FSound_FSOUND_1SetMinHardwareCha * Signature: (I)Z */ JNIEXPORT jboolean JNICALL Java_org_lwjgl_fmod3_FSound_FSOUND_1SetMixer(JNIEnv * env, jclass clazz, jint mixer) { - return fmod_instance->FSOUND_SetMixer(mixer); + jboolean result = fmod_instance->FSOUND_SetMixer(mixer); + + // if we successfully changed mixer - update cached size field + if(result) { + switch(fmod_instance->FSOUND_GetMixer()) { + case FSOUND_MIXER_AUTODETECT: + case FSOUND_MIXER_BLENDMODE: + case FSOUND_MIXER_QUALITY_AUTODETECT: + case FSOUND_MIXER_QUALITY_FPU: + case FSOUND_MIXER_MONO: + case FSOUND_MIXER_QUALITY_MONO: + case FSOUND_MIXER_MAX: + fsound_dsp_buffer_size = 8; + break; + default: + fsound_dsp_buffer_size = 4; + break; + } + } + + return result; } /*