diff --git a/src/nfa/limex_runtime_impl.h b/src/nfa/limex_runtime_impl.h index 011913f9..676ed370 100644 --- a/src/nfa/limex_runtime_impl.h +++ b/src/nfa/limex_runtime_impl.h @@ -537,6 +537,7 @@ char JOIN(LIMEX_API_ROOT, _Q)(const struct NFA *n, struct mq *q, s64a end) { ctx.callback = q->cb; ctx.context = q->context; STORE_STATE(&ctx.cached_estate, ZERO_STATE); + ctx.cached_br = 0; assert(q->items[q->cur].location >= 0); DEBUG_PRINTF("LOAD STATE\n"); @@ -631,6 +632,7 @@ char JOIN(LIMEX_API_ROOT, _Q2)(const struct NFA *n, struct mq *q, s64a end) { ctx.callback = q->cb; ctx.context = q->context; STORE_STATE(&ctx.cached_estate, ZERO_STATE); + ctx.cached_br = 0; DEBUG_PRINTF("LOAD STATE\n"); STORE_STATE(&ctx.s, LOAD_STATE(q->state)); @@ -722,6 +724,7 @@ char JOIN(LIMEX_API_ROOT, _QR)(const struct NFA *n, struct mq *q, ctx.callback = NULL; ctx.context = NULL; STORE_STATE(&ctx.cached_estate, ZERO_STATE); + ctx.cached_br = 0; DEBUG_PRINTF("LOAD STATE\n"); STORE_STATE(&ctx.s, LOAD_STATE(q->state)); @@ -821,6 +824,7 @@ char JOIN(LIMEX_API_ROOT, _B_Reverse)(const struct NFA *n, u64a offset, ctx.callback = cb; ctx.context = context; STORE_STATE(&ctx.cached_estate, ZERO_STATE); + ctx.cached_br = 0; const IMPL_NFA_T *limex = getImplNfa(n); STORE_STATE(&ctx.s, INITIAL_FN(limex, 0)); // always anchored