Skip to content

Commit 4dc13d0

Browse files
authored
fix(script): Fix using uninitialized memory 'mask' in getHumanPlayerMask() (#1114)
1 parent fba5df7 commit 4dc13d0

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed

Generals/Code/GameEngine/Source/GameLogic/ScriptEngine/ScriptActions.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2953,12 +2953,20 @@ void ScriptActions::doCameraMotionBlur(Bool zoomIn, Bool saturate)
29532953

29542954
static PlayerMaskType getHumanPlayerMask( void )
29552955
{
2956+
#if RETAIL_COMPATIBLE_CRC
29562957
PlayerMaskType mask;
2958+
#else
2959+
PlayerMaskType mask = 0;
2960+
#endif
29572961
for (Int i=0; i<ThePlayerList->getPlayerCount(); ++i)
29582962
{
29592963
const Player *player = ThePlayerList->getNthPlayer(i);
29602964
if (player->getPlayerType() == PLAYER_HUMAN)
2965+
#if RETAIL_COMPATIBLE_CRC
29612966
mask &= player->getPlayerMask();
2967+
#else
2968+
mask |= player->getPlayerMask();
2969+
#endif
29622970
}
29632971

29642972
//DEBUG_LOG(("getHumanPlayerMask(): mask was %4.4X", mask));

GeneralsMD/Code/GameEngine/Source/GameLogic/ScriptEngine/ScriptActions.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3049,12 +3049,20 @@ void ScriptActions::doCameraMotionBlur(Bool zoomIn, Bool saturate)
30493049

30503050
static PlayerMaskType getHumanPlayerMask( void )
30513051
{
3052+
#if RETAIL_COMPATIBLE_CRC
30523053
PlayerMaskType mask;
3054+
#else
3055+
PlayerMaskType mask = 0;
3056+
#endif
30533057
for (Int i=0; i<ThePlayerList->getPlayerCount(); ++i)
30543058
{
30553059
const Player *player = ThePlayerList->getNthPlayer(i);
30563060
if (player->getPlayerType() == PLAYER_HUMAN)
3061+
#if RETAIL_COMPATIBLE_CRC
30573062
mask &= player->getPlayerMask();
3063+
#else
3064+
mask |= player->getPlayerMask();
3065+
#endif
30583066
}
30593067

30603068
//DEBUG_LOG(("getHumanPlayerMask(): mask was %4.4X", mask));

0 commit comments

Comments
 (0)