diff --git a/src/MusicPlayer.cpp b/src/MusicPlayer.cpp index d7f93862d..efd9075f0 100644 --- a/src/MusicPlayer.cpp +++ b/src/MusicPlayer.cpp @@ -71,8 +71,9 @@ void MusicPlayer::update() playEnded = true; break; } - if (fadeOutPos != 0 && fadeOutPos >= pos) { - fifo.setVolume((fadeOutPos - pos) / (float)fadeLength); + + if (fadeOutPos != 0) { + fifo.setVolume(std::min(0, fadeOutPos - pos) / (float)fadeLength); } fifo.put(&tempBuf[0], rc);