https://bugs.exim.org/show_bug.cgi?id=2086
--- Comment #2 from Jaeyong <yjaeyong@???> ---
(In reply to Philip Hazel from comment #1)
> This bug was present in both PCRE1 and PCRE2. It was provoked by a
> possessive repeated character class other than * + or ? (your example isn't
> explicitly possessive, being [0-9]{3}, but it got automatically possessified
> because the next character cannot be a digit). I have fixed both PCRE1 and
> PCRE2 in the SVN repository. It was a small oversight in the code. Here is
> the patch for PCRE1 8.40:
>
> --- pcre_dfa_exec.c (revision 1681)
> +++ pcre_dfa_exec.c (working copy)
> @@ -2625,7 +2625,7 @@
> if (isinclass)
> {
> int max = (int)GET2(ecode, 1 + IMM2_SIZE);
> - if (*ecode == OP_CRPOSRANGE)
> + if (*ecode == OP_CRPOSRANGE && count >= (int)GET2(ecode, 1))
> {
> active_count--; /* Remove non-match possibility */
> next_active_state--;
>
> Thanks for the nice clear report.
Thanks for the bug fix.
Would it be possible to also update the release version of PCRE 8.40?
--
You are receiving this mail because:
You are on the CC list for the bug.