From ad0f62f88f276caf751ad38608098a1a8d2574f8 Mon Sep 17 00:00:00 2001 From: Thomas Krijnen Date: Fri, 18 Apr 2025 09:17:19 +0200 Subject: [PATCH] Don't terminate on invalid placement location #4883 --- src/ifcgeom/mapping/IfcAxis1Placement.cpp | 2 +- src/ifcgeom/mapping/IfcAxis2Placement2D.cpp | 2 +- src/ifcgeom/mapping/IfcAxis2Placement3D.cpp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ifcgeom/mapping/IfcAxis1Placement.cpp b/src/ifcgeom/mapping/IfcAxis1Placement.cpp index 3bd96f2950..6e9632133e 100644 --- a/src/ifcgeom/mapping/IfcAxis1Placement.cpp +++ b/src/ifcgeom/mapping/IfcAxis1Placement.cpp @@ -27,7 +27,7 @@ taxonomy::ptr mapping::map_impl(const IfcSchema::IfcAxis1Placement* inst) { try { taxonomy::point3::ptr v = taxonomy::cast(map(inst->Location())); P = *v->components_; - } catch (const std::runtime_error&) { + } catch (const std::exception&) { Logger::Warning("Placement with invalid Location:", inst); } const bool hasAxis = inst->Axis(); diff --git a/src/ifcgeom/mapping/IfcAxis2Placement2D.cpp b/src/ifcgeom/mapping/IfcAxis2Placement2D.cpp index b44c0913b2..4738266e14 100644 --- a/src/ifcgeom/mapping/IfcAxis2Placement2D.cpp +++ b/src/ifcgeom/mapping/IfcAxis2Placement2D.cpp @@ -28,7 +28,7 @@ taxonomy::ptr mapping::map_impl(const IfcSchema::IfcAxis2Placement2D* inst) { try { taxonomy::point3::ptr v = taxonomy::cast(map(inst->Location())); P = *v->components_; - } catch (const std::runtime_error&) { + } catch (const std::exception&) { Logger::Warning("Placement with invalid Location:", inst); } const bool hasRef = !!inst->RefDirection(); diff --git a/src/ifcgeom/mapping/IfcAxis2Placement3D.cpp b/src/ifcgeom/mapping/IfcAxis2Placement3D.cpp index 7be9421788..83477601c7 100644 --- a/src/ifcgeom/mapping/IfcAxis2Placement3D.cpp +++ b/src/ifcgeom/mapping/IfcAxis2Placement3D.cpp @@ -28,7 +28,7 @@ taxonomy::ptr mapping::map_impl(const IfcSchema::IfcAxis2Placement3D* inst) { try { taxonomy::point3::ptr v = taxonomy::cast(map(inst->Location())); o = *v->components_; - } catch (const std::runtime_error&) { + } catch (const std::exception&) { Logger::Warning("Placement with invalid Location:", inst); } const bool hasAxis = !!inst->Axis();