From 2b24d5ebe50dd75258d3d2fceda218dfcf8a66c8 Mon Sep 17 00:00:00 2001 From: Thomas Krijnen Date: Tue, 23 Sep 2025 10:26:01 +0200 Subject: [PATCH] Initialize header schema in constructor and not statically #7131 --- src/ifcparse/IfcSpfHeader.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/ifcparse/IfcSpfHeader.cpp b/src/ifcparse/IfcSpfHeader.cpp index 8a17294152..7e264631d6 100644 --- a/src/ifcparse/IfcSpfHeader.cpp +++ b/src/ifcparse/IfcSpfHeader.cpp @@ -72,6 +72,8 @@ IfcParse::IfcSpfHeader::IfcSpfHeader(IfcParse::IfcFile* file) file_name_(nullptr), file_schema_(nullptr) { + Header_section_schema::get_schema(); + if (file == nullptr) { // overwritten later in IfcFile::setDefaultHeaderValues() when we know the schema identifier file_description_ = new Header_section_schema::file_description({}, ""); @@ -101,6 +103,8 @@ IfcParse::IfcSpfHeader::IfcSpfHeader(IfcParse::IfcFile* file) IfcParse::IfcSpfHeader::IfcSpfHeader(IfcParse::IfcSpfLexer* lexer) { + Header_section_schema::get_schema(); + storage_ = new impl::in_memory_file_storage; storage_->tokens = lexer; file_ = nullptr; @@ -284,5 +288,3 @@ Header_section_schema::file_schema* IfcParse::IfcSpfHeader::file_schema() { return file_schema_; } - -static auto& _ = Header_section_schema::get_schema();