From d6113be58ce246e4bb782e518db24e566b14d3af Mon Sep 17 00:00:00 2001 From: Wojtek Figat Date: Thu, 23 Apr 2026 10:18:43 +0200 Subject: [PATCH] Fix crash on Android when mouse device is not connected --- Source/Engine/Engine/Screen.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/Source/Engine/Engine/Screen.cpp b/Source/Engine/Engine/Screen.cpp index db9e67aa9..48593b3fa 100644 --- a/Source/Engine/Engine/Screen.cpp +++ b/Source/Engine/Engine/Screen.cpp @@ -152,7 +152,7 @@ void Screen::SetCursorLock(CursorLockMode mode) #endif if (win) { - bool inRelativeMode = Input::Mouse->IsRelative(); + bool inRelativeMode = Input::Mouse && Input::Mouse->IsRelative(); if (mode == CursorLockMode::Clipped) win->StartClippingCursor(bounds); #if PLATFORM_SDL @@ -168,11 +168,14 @@ void Screen::SetCursorLock(CursorLockMode mode) win->EndClippingCursor(); #endif - // Enable relative mode when cursor is restricted - if (mode != CursorLockMode::None) - Input::Mouse->SetRelativeMode(true, win); - else if (mode == CursorLockMode::None && inRelativeMode) - Input::Mouse->SetRelativeMode(false, win); + if (Input::Mouse) + { + // Enable relative mode when cursor is restricted + if (mode != CursorLockMode::None) + Input::Mouse->SetRelativeMode(true, win); + else if (mode == CursorLockMode::None && inRelativeMode) + Input::Mouse->SetRelativeMode(false, win); + } } CursorLock = mode; }