diff --git a/src/s_sound.c b/src/s_sound.c
index 89eb697cc91d6b429069a5dc6db4dad3b05497f5..f3e3308478d81160fb0cfda570b39072989476bc 100644
--- a/src/s_sound.c
+++ b/src/s_sound.c
@@ -1523,6 +1523,11 @@ void S_ChangeMusicEx(const char *mmusic, UINT16 mflags, boolean looping, UINT32
 		I_SetSongPosition(position);
 		I_FadeSong(100, fadeinms, NULL);
  	}
+	else // reset volume to 100 with same music
+	{
+		I_StopFadingSong();
+		I_SetInternalMusicVolume(100);
+	}
 }
 
 void S_StopMusic(void)