From 3dc1a1dbfb0b6d7f3b073dc935018bf4694b62a3 Mon Sep 17 00:00:00 2001 From: Yuri Rubinsky Date: Wed, 6 Jul 2022 19:24:24 +0300 Subject: Prevent possible crash when mesh is freed --- servers/rendering/renderer_rd/storage_rd/mesh_storage.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'servers/rendering/renderer_rd') diff --git a/servers/rendering/renderer_rd/storage_rd/mesh_storage.cpp b/servers/rendering/renderer_rd/storage_rd/mesh_storage.cpp index c97b75ba14..3875eb6615 100644 --- a/servers/rendering/renderer_rd/storage_rd/mesh_storage.cpp +++ b/servers/rendering/renderer_rd/storage_rd/mesh_storage.cpp @@ -210,6 +210,8 @@ void MeshStorage::mesh_free(RID p_rid) { mesh_clear(p_rid); mesh_set_shadow_mesh(p_rid, RID()); Mesh *mesh = mesh_owner.get_or_null(p_rid); + ERR_FAIL_COND(!mesh); + mesh->dependency.deleted_notify(p_rid); if (mesh->instances.size()) { ERR_PRINT("deleting mesh with active instances"); -- cgit v1.2.3