From fc79fefb5efb69e9e62eef98f8a485f69f5b3a72 Mon Sep 17 00:00:00 2001 From: Maciej Zygmanowski Date: Tue, 30 Jun 2020 10:37:28 +0200 Subject: [PATCH] WindowServer: Don't crash when invalid resolution requested --- Services/WindowServer/Compositor.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Services/WindowServer/Compositor.cpp b/Services/WindowServer/Compositor.cpp index 168a2a9a6c..e69c50bac3 100644 --- a/Services/WindowServer/Compositor.cpp +++ b/Services/WindowServer/Compositor.cpp @@ -421,7 +421,10 @@ bool Compositor::set_resolution(int desired_width, int desired_height) return true; // Make sure it's impossible to set an invalid resolution - ASSERT(desired_width >= 640 && desired_height >= 480); + if (!(desired_width >= 640 && desired_height >= 480)) { + dbg() << "Compositor: Tried to set invalid resolution: " << desired_width << "x" << desired_height; + return false; + } bool success = Screen::the().set_resolution(desired_width, desired_height); init_bitmaps(); compose(); @@ -533,7 +536,6 @@ bool Compositor::any_opaque_window_contains_rect(const Gfx::IntRect& rect) return found_containing_window; }; - bool Compositor::any_opaque_window_above_this_one_contains_rect(const Window& a_window, const Gfx::IntRect& rect) { bool found_containing_window = false;