diff --git a/lib/source/pl/core/evaluator.cpp b/lib/source/pl/core/evaluator.cpp index f8fc71ea..8438a9c4 100644 --- a/lib/source/pl/core/evaluator.cpp +++ b/lib/source/pl/core/evaluator.cpp @@ -710,7 +710,7 @@ namespace pl::core { auto &storage = getStorage(); if (value->getSection() != ptrn::Pattern::InstantiationSectionId) { if (heapSection || patternLocalSection) { - storage.resize((value->getOffset() & 0xFFFF'FFFF) + value->getSize()); + storage.resize((pattern->getOffset() & 0xFFFF'FFFF) + value->getSize()); this->readData(value->getOffset(), storage.data(), value->getSize(), value->getSection()); } else if (storage.size() < pattern->getOffset() + pattern->getSize()) { storage.resize(pattern->getOffset() + pattern->getSize());