Image: Improve error messages for invalid creation size

(cherry picked from commit b5488def47)
This commit is contained in:
Rémi Verschelde 2020-07-03 12:57:23 +02:00
parent 157e810b2e
commit 8e6dd3191f
1 changed files with 8 additions and 6 deletions

View File

@ -1582,9 +1582,10 @@ PoolVector<uint8_t> Image::get_data() const {
} }
void Image::create(int p_width, int p_height, bool p_use_mipmaps, Format p_format) { void Image::create(int p_width, int p_height, bool p_use_mipmaps, Format p_format) {
ERR_FAIL_COND_MSG(p_width <= 0, "Image width must be greater than 0.");
ERR_FAIL_INDEX(p_width - 1, MAX_WIDTH); ERR_FAIL_COND_MSG(p_height <= 0, "Image height must be greater than 0.");
ERR_FAIL_INDEX(p_height - 1, MAX_HEIGHT); 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) + ".");
int mm = 0; int mm = 0;
int size = _get_dst_image_size(p_width, p_height, p_format, mm, p_use_mipmaps ? -1 : 0); int size = _get_dst_image_size(p_width, p_height, p_format, mm, p_use_mipmaps ? -1 : 0);
@ -1601,9 +1602,10 @@ void Image::create(int p_width, int p_height, bool p_use_mipmaps, Format p_forma
} }
void Image::create(int p_width, int p_height, bool p_use_mipmaps, Format p_format, const PoolVector<uint8_t> &p_data) { void Image::create(int p_width, int p_height, bool p_use_mipmaps, Format p_format, const PoolVector<uint8_t> &p_data) {
ERR_FAIL_COND_MSG(p_width <= 0, "Image width must be greater than 0.");
ERR_FAIL_INDEX(p_width - 1, MAX_WIDTH); ERR_FAIL_COND_MSG(p_height <= 0, "Image height must be greater than 0.");
ERR_FAIL_INDEX(p_height - 1, MAX_HEIGHT); 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) + ".");
int mm; int mm;
int size = _get_dst_image_size(p_width, p_height, p_format, mm, p_use_mipmaps ? -1 : 0); int size = _get_dst_image_size(p_width, p_height, p_format, mm, p_use_mipmaps ? -1 : 0);