diff --git a/src/s_sound.c b/src/s_sound.c index 0eec36398..de6a28f24 100644 --- a/src/s_sound.c +++ b/src/s_sound.c @@ -1518,7 +1518,6 @@ static boolean S_PlayMusic(boolean looping, UINT32 fadeinms) return false; } - S_InitMusicVolume(); // switch between digi and sequence volume return true; } @@ -1684,11 +1683,13 @@ void S_SetMusicVolume(INT32 digvolume, INT32 seqvolume) switch(I_SongType()) { case MU_MID: - case MU_MOD: - case MU_GME: + //case MU_MOD: + //case MU_GME: I_SetMusicVolume(seqvolume&31); + break; default: I_SetMusicVolume(digvolume&31); + break; } } diff --git a/src/sdl/mixer_sound.c b/src/sdl/mixer_sound.c index eca7c7b71..01ea460dc 100644 --- a/src/sdl/mixer_sound.c +++ b/src/sdl/mixer_sound.c @@ -1197,7 +1197,7 @@ void I_ResumeSong() void I_SetMusicVolume(UINT8 volume) { - if (!music) + if (!I_SongPlaying()) return; #ifdef _WIN32 @@ -1253,7 +1253,7 @@ boolean I_SetSongTrack(int track) void I_SetInternalMusicVolume(UINT8 volume) { internal_volume = volume; - if (!music) + if (!I_SongPlaying()) return; Mix_VolumeMusic(get_real_volume(music_volume)); }