diff --git a/scene/resources/2d/navigation_polygon.cpp b/scene/resources/2d/navigation_polygon.cpp index a845809bf2f..4a290db86b5 100644 --- a/scene/resources/2d/navigation_polygon.cpp +++ b/scene/resources/2d/navigation_polygon.cpp @@ -193,6 +193,10 @@ void NavigationPolygon::set_data(const Vector &p_vertices, const Vector for (int i = 0; i < p_polygons.size(); i++) { polygons.write[i].indices = p_polygons[i]; } + { + MutexLock lock(navigation_mesh_generation); + navigation_mesh.unref(); + } } void NavigationPolygon::get_data(Vector &r_vertices, Vector> &r_polygons) {