소스 검색

Fix crash when executing `TileMap.map_pattern`

Validates the input reference.
Haoyu Qiu 3 년 전
부모
커밋
1078c389f9
1개의 변경된 파일1개의 추가작업 그리고 0개의 파일을 삭제
  1. 1 0
      scene/2d/tile_map.cpp

+ 1 - 0
scene/2d/tile_map.cpp

@@ -2104,6 +2104,7 @@ Ref<TileMapPattern> TileMap::get_pattern(int p_layer, TypedArray<Vector2i> p_coo
 }
 }
 
 
 Vector2i TileMap::map_pattern(Vector2i p_position_in_tilemap, Vector2i p_coords_in_pattern, Ref<TileMapPattern> p_pattern) {
 Vector2i TileMap::map_pattern(Vector2i p_position_in_tilemap, Vector2i p_coords_in_pattern, Ref<TileMapPattern> p_pattern) {
+	ERR_FAIL_COND_V(p_pattern.is_null(), Vector2i());
 	ERR_FAIL_COND_V(!p_pattern->has_cell(p_coords_in_pattern), Vector2i());
 	ERR_FAIL_COND_V(!p_pattern->has_cell(p_coords_in_pattern), Vector2i());
 
 
 	Vector2i output = p_position_in_tilemap + p_coords_in_pattern;
 	Vector2i output = p_position_in_tilemap + p_coords_in_pattern;