diff --git a/lib/libimhex/include/hex/pattern_language/ast_node.hpp b/lib/libimhex/include/hex/pattern_language/ast_node.hpp index 3ddb65ad0..0e381f8c2 100644 --- a/lib/libimhex/include/hex/pattern_language/ast_node.hpp +++ b/lib/libimhex/include/hex/pattern_language/ast_node.hpp @@ -1009,6 +1009,8 @@ namespace hex::pl { LogConsole::abortEvaluation(hex::format("array grew past set limit of {}", limit), this); for (u64 i = 0; i < entryCount; i++) { + evaluator->setCurrentControlFlowStatement(ControlFlowStatement::None); + auto patterns = this->m_type->createPatterns(evaluator); if (!patterns.empty()) @@ -1028,6 +1030,8 @@ namespace hex::pl { if (entryIndex > limit) LogConsole::abortEvaluation(hex::format("array grew past set limit of {}", limit), this); + evaluator->setCurrentControlFlowStatement(ControlFlowStatement::None); + auto patterns = this->m_type->createPatterns(evaluator); if (!patterns.empty()) @@ -1048,6 +1052,8 @@ namespace hex::pl { if (entryIndex > limit) LogConsole::abortEvaluation(hex::format("array grew past set limit of {}", limit), this); + evaluator->setCurrentControlFlowStatement(ControlFlowStatement::None); + auto patterns = this->m_type->createPatterns(evaluator); if (!patterns.empty()) {