diff --git a/Generals/Code/GameEngine/Source/GameLogic/ScriptEngine/ScriptEngine.cpp b/Generals/Code/GameEngine/Source/GameLogic/ScriptEngine/ScriptEngine.cpp index 8d63c563fe..8c127c256f 100644 --- a/Generals/Code/GameEngine/Source/GameLogic/ScriptEngine/ScriptEngine.cpp +++ b/Generals/Code/GameEngine/Source/GameLogic/ScriptEngine/ScriptEngine.cpp @@ -5125,7 +5125,8 @@ Player *ScriptEngine::getPlayerFromAsciiString(const AsciiString& playerString) else if (playerString == THIS_PLAYER_ENEMY) { return getSkirmishEnemyPlayer(); } - else { + // TheSuperHackers @bugfix Mauller 01/07/2025 we need to ignore empty player strings as they can return an invalid and uninitialized player from the player list + else if (playerString.isNotEmpty()){ NameKeyType key = NAMEKEY(playerString); Player *pPlayer = ThePlayerList->findPlayerWithNameKey(key); if (pPlayer!=NULL) { diff --git a/GeneralsMD/Code/GameEngine/Source/GameLogic/ScriptEngine/ScriptEngine.cpp b/GeneralsMD/Code/GameEngine/Source/GameLogic/ScriptEngine/ScriptEngine.cpp index 1f90248a31..ea5b23eaa3 100644 --- a/GeneralsMD/Code/GameEngine/Source/GameLogic/ScriptEngine/ScriptEngine.cpp +++ b/GeneralsMD/Code/GameEngine/Source/GameLogic/ScriptEngine/ScriptEngine.cpp @@ -5841,7 +5841,8 @@ Player *ScriptEngine::getPlayerFromAsciiString(const AsciiString& playerString) else if (playerString == THIS_PLAYER_ENEMY) { return getSkirmishEnemyPlayer(); } - else { + // TheSuperHackers @bugfix Mauller 01/07/2025 we need to ignore empty player strings as they can return an invalid and uninitialized player from the player list + else if (playerString.isNotEmpty()){ NameKeyType key = NAMEKEY(playerString); Player *pPlayer = ThePlayerList->findPlayerWithNameKey(key); if (pPlayer!=NULL) {