Check for interrupts and stack overflow in TParserGet(). TParserGet() recurses for some token types, meaning it's possible to drive it to stack overflow. Since this is a minority behavior, I chose to add the check_stack_depth() call to the two places that recurse rather than doing it during every single call.
While at it, add CHECK_FOR_INTERRUPTS(), because this can run unpleasantly long for long inputs. Per bug #17995 from Zuming Jiang. This is old, so back-patch to all supported branches. Discussion: https://postgr.es/m/17995-9f20ff3e6389d...@postgresql.org Branch ------ REL_11_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/c7f33a197bf26da1f7aedd8b33c1ac324bf6ff06 Modified Files -------------- src/backend/tsearch/wparser_def.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+)