diff --git a/src/d_clisrv.c b/src/d_clisrv.c index 65cc8c64e..eb493d55e 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -2750,7 +2750,11 @@ static void Command_connect(void) restoreMenu = &PLAY_MP_OptSelectDef; Music_Remap("menu", "NETMD2"); - Music_Play("menu"); + + if (stricmp(Music_CurrentSong(), "NETMD2")) + { + Music_Play("menu"); + } if (setup_numplayers == 0) { diff --git a/src/music_manager.cpp b/src/music_manager.cpp index 5d5edf058..05d02d855 100644 --- a/src/music_manager.cpp +++ b/src/music_manager.cpp @@ -20,6 +20,7 @@ #include "music_manager.hpp" #include "music_tune.hpp" +#include "d_clisrv.h" #include "doomtype.h" #include "i_sound.h" #include "i_time.h" @@ -173,6 +174,13 @@ bool TuneManager::resync() return false; } + if (hu_stopped) + { + // The server is not sending updates. Don't resync + // because we know game logic is not moving anyway. + return false; + } + long d_local = I_GetTime() - time_local_; long d_sync = detail::tic_time() - time_sync_;