diff --git a/Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/WOLWelcomeMenu.cpp b/Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/WOLWelcomeMenu.cpp index 4c5d98e5e65..6d7d0617a7f 100644 --- a/Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/WOLWelcomeMenu.cpp +++ b/Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/WOLWelcomeMenu.cpp @@ -732,6 +732,12 @@ WindowMsgHandledType WOLWelcomeMenuSystem( GameWindow *window, UnsignedInt msg, { UnicodeString txtInput; + // During shutdown the window hierarchy is being torn down; ignore all + // messages to prevent use-after-free crashes caused by mouse-enter/leave + // events that are still in-flight while the parent window is being destroyed. + if( isShuttingDown ) + return MSG_IGNORED; + switch( msg ) {