summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarius Kintel <marius@kintel.net>2011-12-28 23:46:27 (GMT)
committerMarius Kintel <marius@kintel.net>2011-12-28 23:46:27 (GMT)
commit1fbe453cae84788689b0502526ecded6a25a69d4 (patch)
tree625804af46f3ecc9f1cfed0cb663019f9936269b
parent2799c8e9909ebc3a8e25946463cb259713daa5c1 (diff)
Plug CGAL-3.6 exception crash reported by Don
-rw-r--r--src/CGALEvaluator.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/CGALEvaluator.cc b/src/CGALEvaluator.cc
index a6b2f06..ed2cca6 100644
--- a/src/CGALEvaluator.cc
+++ b/src/CGALEvaluator.cc
@@ -269,7 +269,15 @@ Response CGALEvaluator::visit(State &state, const TransformNode &node)
node.matrix(0,0), node.matrix(0,1), node.matrix(0,2), node.matrix(0,3),
node.matrix(1,0), node.matrix(1,1), node.matrix(1,2), node.matrix(1,3),
node.matrix(2,0), node.matrix(2,1), node.matrix(2,2), node.matrix(2,3), node.matrix(3,3));
- N.p3->transform(t);
+ CGAL::Failure_behaviour old_behaviour = CGAL::set_error_behaviour(CGAL::THROW_EXCEPTION);
+ try {
+ N.p3->transform(t);
+ }
+ catch (CGAL::Assertion_exception e) {
+ // CGAL-3.6 sometimes throws an exception here
+ PRINTF("CGAL error in CGAL_Nef_polyhedron3::transform(): %s", e.what());
+ }
+ CGAL::set_error_behaviour(old_behaviour);
}
}
else {
contact: Jan Huwald // Impressum