浏览代码

Fix 2 more UBSAN issues (#25217).

marxin 6 年之前
父节点
当前提交
7ae160f661
共有 2 个文件被更改,包括 4 次插入3 次删除
  1. 1 0
      editor/plugins/canvas_item_editor_plugin.cpp
  2. 3 3
      scene/resources/mesh.cpp

+ 1 - 0
editor/plugins/canvas_item_editor_plugin.cpp

@@ -4559,6 +4559,7 @@ CanvasItemEditor::CanvasItemEditor(EditorNode *p_editor) {
 	snap_grid = true;
 	snap_guides = true;
 	snap_rotation = false;
+	snap_relative = false;
 	snap_pixel = false;
 
 	skeleton_show_bones = true;

+ 3 - 3
scene/resources/mesh.cpp

@@ -787,7 +787,6 @@ void ArrayMesh::add_surface_from_arrays(PrimitiveType p_primitive, const Array &
 	Surface s;
 
 	VisualServer::get_singleton()->mesh_add_surface_from_arrays(mesh, (VisualServer::PrimitiveType)p_primitive, p_arrays, p_blend_shapes, p_flags);
-	surfaces.push_back(s);
 
 	/* make aABB? */ {
 
@@ -808,8 +807,9 @@ void ArrayMesh::add_surface_from_arrays(PrimitiveType p_primitive, const Array &
 				aabb.expand_to(vtx[i]);
 		}
 
-		surfaces.write[surfaces.size() - 1].aabb = aabb;
-		surfaces.write[surfaces.size() - 1].is_2d = arr.get_type() == Variant::POOL_VECTOR2_ARRAY;
+		s.aabb = aabb;
+		s.is_2d = arr.get_type() == Variant::POOL_VECTOR2_ARRAY;
+		surfaces.push_back(s);
 
 		_recompute_aabb();
 	}