From 088bc207ab94efaa8a4485350478df5b90682456 Mon Sep 17 00:00:00 2001 From: Thomas Krijnen Date: Mon, 11 Nov 2024 13:57:36 +0100 Subject: [PATCH] Don't fail on untyped enumerations --- src/ifcparse/IfcFile.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/ifcparse/IfcFile.cpp b/src/ifcparse/IfcFile.cpp index 77610ec2f2..18523a158a 100644 --- a/src/ifcparse/IfcFile.cpp +++ b/src/ifcparse/IfcFile.cpp @@ -60,12 +60,14 @@ namespace { } else if (t.type == IfcParse::Token_BOOL) { fn(IfcParse::TokenFunc::asBool(t)); } else if (t.type == IfcParse::Token_ENUMERATION) { - if (decl->as_enumeration_type()) { + if (decl && decl->as_enumeration_type()) { try { fn(EnumerationReference(decl->as_enumeration_type(), decl->as_enumeration_type()->lookup_enum_offset(IfcParse::TokenFunc::asStringRef(t)))); } catch (IfcParse::IfcException& e) { Logger::Error(e); } + } else { + Logger::Error("Untyped enumeration encountered"); } } else if (t.type == IfcParse::Token_FLOAT) { fn(IfcParse::TokenFunc::asFloat(t));