From 3012b76ec5a1bf26d2df29d67957e7aef2c20660 Mon Sep 17 00:00:00 2001 From: Haoyu Qiu Date: Sun, 1 May 2022 13:06:44 +0800 Subject: Validate image size for Noise get image methods --- modules/noise/noise.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/noise/noise.cpp b/modules/noise/noise.cpp index ad3df0a016..d14b63f7c8 100644 --- a/modules/noise/noise.cpp +++ b/modules/noise/noise.cpp @@ -31,6 +31,8 @@ #include "noise.h" Ref Noise::get_seamless_image(int p_width, int p_height, bool p_invert, bool p_in_3d_space, real_t p_blend_skirt) const { + ERR_FAIL_COND_V(p_width <= 0 || p_height <= 0, Ref()); + int skirt_width = p_width * p_blend_skirt; int skirt_height = p_height * p_blend_skirt; int src_width = p_width + skirt_width; @@ -55,6 +57,8 @@ uint8_t Noise::_alpha_blend(uint8_t p_bg, uint8_t p_fg, int p_alpha) co } Ref Noise::get_image(int p_width, int p_height, bool p_invert, bool p_in_3d_space) const { + ERR_FAIL_COND_V(p_width <= 0 || p_height <= 0, Ref()); + Vector data; data.resize(p_width * p_height); -- cgit v1.2.3