diff --git a/src/MessageManager.cpp b/src/MessageManager.cpp index 671871fba2..c487973d27 100644 --- a/src/MessageManager.cpp +++ b/src/MessageManager.cpp @@ -207,8 +207,7 @@ void MessageManager::Unsubscribe( IMessageSubscriber* pSubscriber, MessageID m ) void MessageManager::Broadcast( Message &msg ) const { - // GAMESTATE is created before MESSAGEMAN, and has several BroadcastOnChangePtr members, so they all broadcast when they're initialized. - if(this != NULL && m_Logging) + if(m_Logging) { LOG->Trace("MESSAGEMAN:Broadcast: %s", msg.GetName().c_str()); } diff --git a/src/StepMania.cpp b/src/StepMania.cpp index 14f3824e2f..808c808a7e 100644 --- a/src/StepMania.cpp +++ b/src/StepMania.cpp @@ -1041,8 +1041,10 @@ int sm_main(int argc, char* argv[]) // This needs PREFSMAN. Dialog::Init(); - // Create game objects + // Set up the messaging system early to have well defined code. + MESSAGEMAN = new MessageManager; + // Create game objects GAMESTATE = new GameState; // This requires PREFSMAN, for PREFSMAN->m_bShowLoadingWindow. @@ -1162,7 +1164,6 @@ int sm_main(int argc, char* argv[]) SONGMAN->UpdatePopular(); SONGMAN->UpdatePreferredSort(); NSMAN = new NetworkSyncManager( pLoadingWindow ); - MESSAGEMAN = new MessageManager; STATSMAN = new StatsManager; // Initialize which courses are ranking courses here.