if (rose->flushCombProgramOffset) {
if (roseRunFlushCombProgram(rose, scratch, ~0ULL) == MO_HALT_MATCHING) {
unmarkScratchInUse(scratch);
+ if (unlikely(internal_matching_error(scratch))) {
+ return HS_UNKNOWN_ERROR;
+ }
+
return HS_SCAN_TERMINATED;
}
}
if (roseRunFlushCombProgram(id->rose, scratch, ~0ULL)
== MO_HALT_MATCHING) {
scratch->core_info.status |= STATUS_TERMINATED;
+ unmarkScratchInUse(scratch);
+ if (unlikely(internal_matching_error(scratch))) {
+ return HS_UNKNOWN_ERROR;
+ }
}
}
if (roseRunFlushCombProgram(id->rose, scratch, ~0ULL)
== MO_HALT_MATCHING) {
scratch->core_info.status |= STATUS_TERMINATED;
+ unmarkScratchInUse(scratch);
+ if (unlikely(internal_matching_error(scratch))) {
+ return HS_UNKNOWN_ERROR;
+ }
}
}