From fb8648c820af28fa2c9af6ab279cef15e7c428e2 Mon Sep 17 00:00:00 2001 From: Thierry Crozat Date: Fri, 10 Feb 2023 22:53:07 +0000 Subject: [PATCH] SDL: Clip DPI scaling factor to ensure we get a reasonable value --- backends/platform/sdl/sdl-window.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/backends/platform/sdl/sdl-window.cpp b/backends/platform/sdl/sdl-window.cpp index e9f78cc19e6..864bb2a45f2 100644 --- a/backends/platform/sdl/sdl-window.cpp +++ b/backends/platform/sdl/sdl-window.cpp @@ -24,6 +24,7 @@ #include "backends/platform/sdl/sdl-window.h" #include "common/textconsole.h" +#include "common/util.h" #include "icons/scummvm.xpm" @@ -292,7 +293,9 @@ float SdlWindow::getDpiScalingFactor() const { getDisplayDpi(&dpi, &defaultDpi); debug(4, "dpi: %g default: %g", dpi, defaultDpi); float ratio = dpi / defaultDpi; - return ratio; + // Getting the DPI can be unreliable, so clamp the scaling factor to make sure + // we do not return unreasonable values. + return CLIP(ratio, 1.0f, 4.0f); } float SdlWindow::getSdlDpiScalingFactor() const {