浏览代码

Fix crash when calling `fill` method on an empty `Image`

(cherry picked from commit adec51cde87d29dd74efb6e5cd0167990de8d569)
Yuri Rubinsky 2 年之前
父节点
当前提交
d3f8563298
共有 1 个文件被更改,包括 6 次插入0 次删除
  1. 6 0
      core/image.cpp

+ 6 - 0
core/image.cpp

@@ -2477,6 +2477,9 @@ void Image::_repeat_pixel_over_subsequent_memory(uint8_t *p_pixel, int p_pixel_s
 }
 
 void Image::fill(const Color &p_color) {
+	if (data.size() == 0) {
+		return;
+	}
 	ERR_FAIL_COND_MSG(!_can_modify(format), "Cannot fill in compressed or custom image formats.");
 
 	lock();
@@ -2495,6 +2498,9 @@ void Image::fill(const Color &p_color) {
 }
 
 void Image::fill_rect(const Rect2 &p_rect, const Color &p_color) {
+	if (data.size() == 0) {
+		return;
+	}
 	ERR_FAIL_COND_MSG(!_can_modify(format), "Cannot fill rect in compressed or custom image formats.");
 
 	Rect2i r = Rect2i(0, 0, width, height).clip(p_rect.abs());