[ox/model] Fix possible infinite recursion

(synced from 7e3e046109)
This commit is contained in:
2025-01-23 23:46:42 -06:00
parent 3607706681
commit 385a10e6e4
+5 -1
View File
@@ -58,7 +58,11 @@ class TypeStore {
if (!std::is_constant_evaluated()) {
OX_REQUIRE_M(dt, loadDescriptor(typeId));
for (auto &f : dt->fieldList) {
OX_RETURN_ERROR(this->getLoad(f.typeId).moveTo(f.type));
if (typeId == f.typeId) {
f.type = dt.get();
} else {
OX_RETURN_ERROR(this->getLoad(f.typeId).moveTo(f.type));
}
}
auto &out = m_cache[typeId];
out = std::move(dt);