# HG changeset patch # User Matti Hamalainen # Date 1579851549 -7200 # Node ID 3a35db5c1873925a0018f0b285b70c6d239c00e4 # Parent 9a1ed82abefd552ae6cbfe43d2eefe51fe46bb54 Cleanup. diff -r 9a1ed82abefd -r 3a35db5c1873 th_regex.c --- a/th_regex.c Fri Jan 24 09:36:43 2020 +0200 +++ b/th_regex.c Fri Jan 24 09:39:09 2020 +0200 @@ -423,22 +423,21 @@ if (cch == '?') { - // Check if previous was a count ("*?" or "+?") - if (pnode->mode == TH_RE_MATCH_COUNT_GREEDY) - pnode->mode = TH_RE_MATCH_COUNT_NONGREEDY; - else + // Check if previous was a count if (pnode->mode == TH_RE_MATCH_COUNT_NONGREEDY) { res = THERR_INVALID_DATA; goto exit; } else + if (pnode->mode != TH_RE_MATCH_COUNT_GREEDY) { // Previous token is optional (repeat 0-1 times) - pnode->mode = TH_RE_MATCH_COUNT_NONGREEDY; pnode->repeatMin = 0; pnode->repeatMax = 1; } + + pnode->mode = TH_RE_MATCH_COUNT_NONGREEDY; } else {