summaryrefslogtreecommitdiffstats
path: root/platform/linuxbsd
diff options
context:
space:
mode:
authorPedro J. Estébanez <pedrojrulez@gmail.com>2024-04-15 18:17:09 +0200
committerPedro J. Estébanez <pedrojrulez@gmail.com>2024-05-08 17:41:40 +0200
commitfc08eca5249b8c83debc99f246cbd54ede886717 (patch)
tree06b61c7411243b3f95a8e4285015ca244f27ab78 /platform/linuxbsd
parent2042420bd7f43bb834316d7ca4631ab2fcfcc820 (diff)
downloadredot-engine-fc08eca5249b8c83debc99f246cbd54ede886717.tar.gz
DisplayServer: Avoid deadlocks while issuing input events and recursive main loop iterations
Diffstat (limited to 'platform/linuxbsd')
-rw-r--r--platform/linuxbsd/x11/display_server_x11.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/platform/linuxbsd/x11/display_server_x11.cpp b/platform/linuxbsd/x11/display_server_x11.cpp
index b76cbc126f..9174b65b1b 100644
--- a/platform/linuxbsd/x11/display_server_x11.cpp
+++ b/platform/linuxbsd/x11/display_server_x11.cpp
@@ -4268,6 +4268,8 @@ bool DisplayServerX11::_window_focus_check() {
}
void DisplayServerX11::process_events() {
+ ERR_FAIL_COND(!Thread::is_main_thread());
+
_THREAD_SAFE_LOCK_
#ifdef DISPLAY_SERVER_X11_DEBUG_LOGS_ENABLED