diff options
author | Brecht Van Lommel <brecht@blender.org> | 2021-03-15 18:11:12 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2021-03-15 18:47:07 +0300 |
commit | cd3fade2aaf74d1c3db345c13bd0122dc45d372f (patch) | |
tree | a87fb96829eecd8c7f138539ef26a196b1ab947a /intern/cycles/render/mesh.cpp | |
parent | 3fdef12162f68a7f89a6f868f927fe8755c7bd20 (diff) |
Fix Cycles rendering crash on OpenBSD
Static initialization order was not guaranteed to be correct for node base
types. Now wrap all initialization in accessor functions to ensure the order
is correct.
Did not cause any known bug on Linux/macOS/Windows, but showed up on this
platform.
Diffstat (limited to 'intern/cycles/render/mesh.cpp')
-rw-r--r-- | intern/cycles/render/mesh.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/intern/cycles/render/mesh.cpp b/intern/cycles/render/mesh.cpp index 1f6fcdd0abe..d5e5b960665 100644 --- a/intern/cycles/render/mesh.cpp +++ b/intern/cycles/render/mesh.cpp @@ -125,7 +125,7 @@ float3 Mesh::SubdFace::normal(const Mesh *mesh) const NODE_DEFINE(Mesh) { - NodeType *type = NodeType::add("mesh", create, NodeType::NONE, Geometry::node_base_type); + NodeType *type = NodeType::add("mesh", create, NodeType::NONE, Geometry::get_node_base_type()); SOCKET_INT_ARRAY(triangles, "Triangles", array<int>()); SOCKET_POINT_ARRAY(verts, "Vertices", array<float3>()); @@ -202,7 +202,7 @@ Mesh::Mesh(const NodeType *node_type, Type geom_type_) patch_table = NULL; } -Mesh::Mesh() : Mesh(node_type, Geometry::MESH) +Mesh::Mesh() : Mesh(get_node_type(), Geometry::MESH) { } |