From e0223edafceab2bcb2e469a2af99e1349ce38d7c Mon Sep 17 00:00:00 2001 From: Haoyu Qiu Date: Sun, 27 Jun 2021 20:52:42 +0800 Subject: [PATCH] Validates the `p_format` parameter in `Image::create` functions. (cherry picked from commit 0b7ffd4f6867f71506ff345765aeb7874c5fa3e2) --- core/image.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/core/image.cpp b/core/image.cpp index ec09043194c..15ae7db3997 100644 --- a/core/image.cpp +++ b/core/image.cpp @@ -1587,6 +1587,7 @@ void Image::create(int p_width, int p_height, bool p_use_mipmaps, Format p_forma ERR_FAIL_COND_MSG(p_width > MAX_WIDTH, "Image width cannot be greater than " + itos(MAX_WIDTH) + "."); ERR_FAIL_COND_MSG(p_height > MAX_HEIGHT, "Image height cannot be greater than " + itos(MAX_HEIGHT) + "."); ERR_FAIL_COND_MSG(write_lock.ptr(), "Cannot create image when it is locked."); + ERR_FAIL_INDEX_MSG(p_format, FORMAT_MAX, "Image format out of range, please see Image's Format enum."); int mm = 0; int size = _get_dst_image_size(p_width, p_height, p_format, mm, p_use_mipmaps ? -1 : 0); @@ -1607,6 +1608,7 @@ void Image::create(int p_width, int p_height, bool p_use_mipmaps, Format p_forma ERR_FAIL_COND_MSG(p_height <= 0, "Image height must be greater than 0."); ERR_FAIL_COND_MSG(p_width > MAX_WIDTH, "Image width cannot be greater than " + itos(MAX_WIDTH) + "."); ERR_FAIL_COND_MSG(p_height > MAX_HEIGHT, "Image height cannot be greater than " + itos(MAX_HEIGHT) + "."); + ERR_FAIL_INDEX_MSG(p_format, FORMAT_MAX, "Image format out of range, please see Image's Format enum."); int mm; int size = _get_dst_image_size(p_width, p_height, p_format, mm, p_use_mipmaps ? -1 : 0);