From 1370a49dfe0be8953ccdb088df32240403bd6e46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Herczeg?= Date: Fri, 14 Aug 2015 09:36:04 +0000 Subject: [PATCH] Match limit check added to recursion. --- ChangeLog | 3 +++ src/pcre2_jit_compile.c | 1 + 2 files changed, 4 insertions(+) diff --git a/ChangeLog b/ChangeLog index cba8352..7cd2eba 100644 --- a/ChangeLog +++ b/ChangeLog @@ -142,6 +142,9 @@ repeats. This issue was found by Karl Skomski with a custom LLVM fuzzer. 38. A bug which was introduced by the single character repetition optimization was fixed. +39. Match limit check added to recursion. This issue was found by Karl Skomski +with a custom LLVM fuzzer. + Version 10.20 30-June-2015 -------------------------- diff --git a/src/pcre2_jit_compile.c b/src/pcre2_jit_compile.c index aa71270..1067bd4 100644 --- a/src/pcre2_jit_compile.c +++ b/src/pcre2_jit_compile.c @@ -10251,6 +10251,7 @@ common->currententry->entry = LABEL(); set_jumps(common->currententry->calls, common->currententry->entry); sljit_emit_fast_enter(compiler, TMP2, 0); +count_match(common); allocate_stack(common, private_data_size + framesize + alternativesize); OP1(SLJIT_MOV, SLJIT_MEM1(STACK_TOP), STACK(private_data_size + framesize + alternativesize - 1), TMP2, 0); copy_private_data(common, ccbegin, ccend, TRUE, private_data_size + framesize + alternativesize, framesize + alternativesize, needs_control_head);