From 12f2e6a42a6fdddb72b0415169eaae0f4eacc358 Mon Sep 17 00:00:00 2001 From: DeaTh-G Date: Tue, 3 Feb 2026 17:17:23 +0100 Subject: [PATCH] implement fix for potential window size crash --- UnleashedRecomp/ui/options_menu.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/UnleashedRecomp/ui/options_menu.cpp b/UnleashedRecomp/ui/options_menu.cpp index 33ac5c69..36e5eec4 100644 --- a/UnleashedRecomp/ui/options_menu.cpp +++ b/UnleashedRecomp/ui/options_menu.cpp @@ -1255,9 +1255,14 @@ static void DrawConfigOptions() case 3: // VIDEO { - DrawConfigOption(rowCount++, yOffset, &Config::WindowSize, - !Config::Fullscreen, &Localise("Options_Desc_NotAvailableFullscreen"), - 0, 0, (int32_t)GameWindow::GetDisplayModes().size() - 1, false); + auto displayModeCount = (int32_t)GameWindow::GetDisplayModes().size(); + auto canChangeWindowSize = !Config::Fullscreen && displayModeCount > 1; + auto windowSizeReason = &Localise("Options_Desc_NotAvailableFullscreen"); + + if (!Config::Fullscreen && displayModeCount <= 1) + windowSizeReason = &Localise("Options_Desc_NotAvailableHardware"); + + DrawConfigOption(rowCount++, yOffset, &Config::WindowSize, canChangeWindowSize, windowSizeReason, 0, 0, displayModeCount - 1, false); auto displayCount = GameWindow::GetDisplayCount(); auto canChangeMonitor = Config::Fullscreen && displayCount > 1;