Преглед изворни кода

Merge pull request #46008 from akien-mga/3.2-fix-camera-align-crash-45976

Camera2D: Fix crash calling align when not in tree
Rémi Verschelde пре 4 година
родитељ
комит
1611d3dc17
1 измењених фајлова са 2 додато и 1 уклоњено
  1. 2 1
      scene/2d/camera_2d.cpp

+ 2 - 1
scene/2d/camera_2d.cpp

@@ -94,7 +94,7 @@ Vector2 Camera2D::get_zoom() const {
 
 
 Transform2D Camera2D::get_camera_transform() {
 Transform2D Camera2D::get_camera_transform() {
 
 
-	if (!get_tree())
+	if (!get_tree() || !viewport)
 		return Transform2D();
 		return Transform2D();
 
 
 	ERR_FAIL_COND_V(custom_viewport && !ObjectDB::get_instance(custom_viewport_id), Transform2D());
 	ERR_FAIL_COND_V(custom_viewport && !ObjectDB::get_instance(custom_viewport_id), Transform2D());
@@ -498,6 +498,7 @@ void Camera2D::reset_smoothing() {
 
 
 void Camera2D::align() {
 void Camera2D::align() {
 
 
+	ERR_FAIL_COND(!is_inside_tree() || !viewport);
 	ERR_FAIL_COND(custom_viewport && !ObjectDB::get_instance(custom_viewport_id));
 	ERR_FAIL_COND(custom_viewport && !ObjectDB::get_instance(custom_viewport_id));
 
 
 	Size2 screen_size = viewport->get_visible_rect().size;
 	Size2 screen_size = viewport->get_visible_rect().size;