summaryrefslogtreecommitdiffstats
path: root/platform/windows/display_server_windows.cpp
diff options
context:
space:
mode:
authorPedro J. Estébanez <pedrojrulez@gmail.com>2024-01-05 18:27:10 +0100
committerPedro J. Estébanez <pedrojrulez@gmail.com>2024-02-06 19:55:01 +0100
commitd5a5dd52e82c171a3eba449cfdee9eb3be1323d7 (patch)
treee159b2c1895815d48fd4c5742fd981917fd5f521 /platform/windows/display_server_windows.cpp
parent13a0d6e9b253654f5cc2a44f3d0b3cae10440443 (diff)
downloadredot-engine-d5a5dd52e82c171a3eba449cfdee9eb3be1323d7.tar.gz
Avoid several null-dereferences of ApiContextRD
Diffstat (limited to 'platform/windows/display_server_windows.cpp')
-rw-r--r--platform/windows/display_server_windows.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/platform/windows/display_server_windows.cpp b/platform/windows/display_server_windows.cpp
index 2bec804c7c..11010709dd 100644
--- a/platform/windows/display_server_windows.cpp
+++ b/platform/windows/display_server_windows.cpp
@@ -4344,10 +4344,11 @@ DisplayServer::WindowID DisplayServerWindows::_create_window(WindowMode p_mode,
}
#endif
if (context_rd->window_create(id, p_vsync_mode, WindowRect.right - WindowRect.left, WindowRect.bottom - WindowRect.top, &wpd) != OK) {
+ ERR_PRINT(vformat("Failed to create %s Window.", context_rd->get_api_name()));
memdelete(context_rd);
context_rd = nullptr;
windows.erase(id);
- ERR_FAIL_V_MSG(INVALID_WINDOW_ID, vformat("Failed to create %s Window.", context_rd->get_api_name()));
+ return INVALID_WINDOW_ID;
}
wd.context_created = true;
}