From 8b9404d26ee987947b0a8ab4b3940add3e3137b1 Mon Sep 17 00:00:00 2001 From: Tomasz Wejroch Date: Wed, 26 Nov 2025 13:46:33 +0100 Subject: [PATCH] Added check for mandatory lang_type pointer before unload --- src/dbzero/object_model/tags/ObjectIterator.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/dbzero/object_model/tags/ObjectIterator.cpp b/src/dbzero/object_model/tags/ObjectIterator.cpp index 4ed452a9..91134bbc 100644 --- a/src/dbzero/object_model/tags/ObjectIterator.cpp +++ b/src/dbzero/object_model/tags/ObjectIterator.cpp @@ -90,9 +90,10 @@ namespace db0::object_model ObjectIterator::ObjectSharedPtr ObjectIterator::unload(db0::swine_ptr &fixture, Address address) const { // unload as typed if class is known - if (m_type) { + if (m_type && m_lang_type.get()) { return LangToolkit::unloadObject(fixture, address, m_type, m_lang_type.get(), m_access_mode); } else { + // Memo type or lang type is missing. We try to resolve both here. return LangToolkit::unloadObject(fixture, address, m_class_factory, m_lang_type.get(), 0, m_access_mode); } }