瀏覽代碼

[3.5+] Fix GridMap free navigation RID error spam

Fixes GridMap free navigation RID error spam.
smix8 2 年之前
父節點
當前提交
befdafdbf6
共有 1 個文件被更改,包括 4 次插入1 次删除
  1. 4 1
      modules/gridmap/grid_map.cpp

+ 4 - 1
modules/gridmap/grid_map.cpp

@@ -473,7 +473,10 @@ bool GridMap::_octant_update(const OctantKey &p_key) {
 
 	//erase navigation
 	for (Map<IndexKey, Octant::NavMesh>::Element *E = g.navmesh_ids.front(); E; E = E->next()) {
-		NavigationServer::get_singleton()->free(E->get().region);
+		if (E->get().region.is_valid()) {
+			NavigationServer::get_singleton()->free(E->get().region);
+			E->get().region = RID();
+		}
 		if (E->get().navmesh_debug_instance.is_valid()) {
 			VS::get_singleton()->free(E->get().navmesh_debug_instance);
 		}