Browse Source

Fix Window.hide() crash when force_native changed

Moved force_native = p_force_native assignment to after is_visible() check, to prevent value from changing after window is shown.

Fixes #90609
aaronp64 1 năm trước cách đây
mục cha
commit
4ed51933f9
1 tập tin đã thay đổi với 2 bổ sung2 xóa
  1. 2 2
      scene/main/window.cpp

+ 2 - 2
scene/main/window.cpp

@@ -1215,10 +1215,10 @@ void Window::set_force_native(bool p_force_native) {
 	if (force_native == p_force_native) {
 		return;
 	}
-	force_native = p_force_native;
 	if (is_visible() && !is_in_edited_scene_root()) {
-		WARN_PRINT("Can't change \"force_native\" while a window is displayed. Consider hiding window before changing this value.");
+		ERR_FAIL_MSG("Can't change \"force_native\" while a window is displayed. Consider hiding window before changing this value.");
 	}
+	force_native = p_force_native;
 }
 
 bool Window::get_force_native() const {