Fix T39151: Boolean modifier freeze
This re-applied patch from 25cbd13
which was lost at some point
since missing patchset in series.
This revision is to be back-ported to the final release.
This commit is contained in:
parent
217dbfeba5
commit
94379277dd
Notes:
blender-bot
2023-02-14 11:00:20 +01:00
Referenced by issue #39151, Boolean modifier freeze Referenced by issue #39151, Boolean modifier freeze
|
@ -719,6 +719,10 @@ namespace {
|
|||
unassigned--;
|
||||
}
|
||||
}
|
||||
|
||||
if (!removed.size())
|
||||
throw carve::exception("Failed to merge holes");
|
||||
|
||||
for (std::set<int>::iterator f = removed.begin(); f != removed.end(); ++f) {
|
||||
for (unsigned i = 0; i < containing_faces.size(); ++i) {
|
||||
containing_faces[i].erase(std::remove(containing_faces[i].begin(),
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
diff -r e82d852e4fb0 lib/intersect_face_division.cpp
|
||||
--- a/lib/intersect_face_division.cpp Wed Jan 15 13:16:14 2014 +1100
|
||||
+++ b/lib/intersect_face_division.cpp Thu Mar 13 15:39:26 2014 +0600
|
||||
@@ -719,6 +719,10 @@
|
||||
unassigned--;
|
||||
}
|
||||
}
|
||||
+
|
||||
+ if (!removed.size())
|
||||
+ throw carve::exception("Failed to merge holes");
|
||||
+
|
||||
for (std::set<int>::iterator f = removed.begin(); f != removed.end(); ++f) {
|
||||
for (unsigned i = 0; i < containing_faces.size(); ++i) {
|
||||
containing_faces[i].erase(std::remove(containing_faces[i].begin(),
|
|
@ -9,3 +9,4 @@ interpolator_reorder.patch
|
|||
mesh_simplify_dissolve_edges.patch
|
||||
memory_leak_fix.patch
|
||||
mavc_fix.patch
|
||||
face_hole_merge_workaround.patch
|
||||
|
|
Loading…
Reference in New Issue