diff options
author | Martin Capitanio <capnm@capitanio.org> | 2018-09-04 04:42:23 +0200 |
---|---|---|
committer | Martin Capitanio <capnm@capitanio.org> | 2018-09-04 04:42:23 +0200 |
commit | bcee65284e5852b77dbfa0ae8fdf2e47bd6dcf81 (patch) | |
tree | 23fe25db15adfa841bcace6b9b4c8d9fe91c5b6a | |
parent | f50dd682f6a0f9506daaf16fed06f4bc9efa6599 (diff) |
Really fix the custom cursor hotspot
Add check for negative values.
Fixes #21721
-rw-r--r-- | platform/osx/os_osx.mm | 1 | ||||
-rw-r--r-- | platform/windows/os_windows.cpp | 1 | ||||
-rw-r--r-- | platform/x11/os_x11.cpp | 1 |
3 files changed, 3 insertions, 0 deletions
diff --git a/platform/osx/os_osx.mm b/platform/osx/os_osx.mm index 16f1ff8e11..44b4223a65 100644 --- a/platform/osx/os_osx.mm +++ b/platform/osx/os_osx.mm @@ -1604,6 +1604,7 @@ void OS_OSX::set_custom_mouse_cursor(const RES &p_cursor, CursorShape p_shape, c } ERR_FAIL_COND(!texture.is_valid()); + ERR_FAIL_COND(p_hotspot.x < 0 || p_hotspot.y < 0); ERR_FAIL_COND(texture_size.width > 256 || texture_size.height > 256); ERR_FAIL_COND(p_hotspot.x > texture_size.width || p_hotspot.y > texture_size.height); diff --git a/platform/windows/os_windows.cpp b/platform/windows/os_windows.cpp index 9d5cae00e8..88793386ab 100644 --- a/platform/windows/os_windows.cpp +++ b/platform/windows/os_windows.cpp @@ -2252,6 +2252,7 @@ void OS_Windows::set_custom_mouse_cursor(const RES &p_cursor, CursorShape p_shap } ERR_FAIL_COND(!texture.is_valid()); + ERR_FAIL_COND(p_hotspot.x < 0 || p_hotspot.y < 0); ERR_FAIL_COND(texture_size.width > 256 || texture_size.height > 256); ERR_FAIL_COND(p_hotspot.x > texture_size.width || p_hotspot.y > texture_size.height); diff --git a/platform/x11/os_x11.cpp b/platform/x11/os_x11.cpp index 606a2371fe..a57a8c6bb9 100644 --- a/platform/x11/os_x11.cpp +++ b/platform/x11/os_x11.cpp @@ -2534,6 +2534,7 @@ void OS_X11::set_custom_mouse_cursor(const RES &p_cursor, CursorShape p_shape, c } ERR_FAIL_COND(!texture.is_valid()); + ERR_FAIL_COND(p_hotspot.x < 0 || p_hotspot.y < 0); ERR_FAIL_COND(texture_size.width > 256 || texture_size.height > 256); ERR_FAIL_COND(p_hotspot.x > texture_size.width || p_hotspot.y > texture_size.height); |