From 9a15db8f966a789b7885ce457ea27f2571a9c60e Mon Sep 17 00:00:00 2001 From: "seer-by-sentry[bot]" <157164994+seer-by-sentry[bot]@users.noreply.github.com> Date: Thu, 19 Mar 2026 14:48:11 +0000 Subject: [PATCH] Fix: Prevent null dereference in InGameUI::deselectDrawable --- Generals/Code/GameEngine/Source/GameClient/InGameUI.cpp | 3 +++ GeneralsMD/Code/GameEngine/Source/GameClient/InGameUI.cpp | 7 +++++++ 2 files changed, 10 insertions(+) diff --git a/Generals/Code/GameEngine/Source/GameClient/InGameUI.cpp b/Generals/Code/GameEngine/Source/GameClient/InGameUI.cpp index d00f96a5a05..bd8a146ce4a 100644 --- a/Generals/Code/GameEngine/Source/GameClient/InGameUI.cpp +++ b/Generals/Code/GameEngine/Source/GameClient/InGameUI.cpp @@ -3340,6 +3340,9 @@ void InGameUI::selectDrawable( Drawable *draw ) void InGameUI::deselectDrawable( Drawable *draw ) { + if( draw == nullptr ) + return; + if( draw->isSelected() ) { diff --git a/GeneralsMD/Code/GameEngine/Source/GameClient/InGameUI.cpp b/GeneralsMD/Code/GameEngine/Source/GameClient/InGameUI.cpp index cc14564d242..ad98f1ded5a 100644 --- a/GeneralsMD/Code/GameEngine/Source/GameClient/InGameUI.cpp +++ b/GeneralsMD/Code/GameEngine/Source/GameClient/InGameUI.cpp @@ -3497,6 +3497,9 @@ void InGameUI::selectDrawable(Drawable * draw) void InGameUI::deselectDrawable(Drawable * draw) { + if (draw == nullptr) + return; + if (draw->isSelected()) { @@ -7163,4 +7166,8 @@ void InGameUI::drawGameTime() + + + +