From 6673aff685047d4a0e6254f3b62313425e8f5b3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Blot?= Date: Sat, 13 May 2017 12:03:11 +0200 Subject: Limit properly the sound setting at updateSound runtime step (#5753) * Limit properly the sound setting at updateSound runtime step Fix #5026 * Add a comment --- src/game.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/game.cpp') diff --git a/src/game.cpp b/src/game.cpp index ab8eb5c70..f237a87aa 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -3444,7 +3444,15 @@ void Game::updateSound(f32 dtime) v3f(0, 0, 0), // velocity camera->getDirection(), camera->getCameraNode()->getUpVector()); - sound->setListenerGain(g_settings->getFloat("sound_volume")); + + // Check if volume is in the proper range, else fix it. + float old_volume = g_settings->getFloat("sound_volume"); + float new_volume = rangelim(old_volume, 0.0f, 1.0f); + sound->setListenerGain(new_volume); + + if (old_volume != new_volume) { + g_settings->setFloat("sound_volume", new_volume); + } LocalPlayer *player = client->getEnv().getLocalPlayer(); -- cgit v1.2.3