Skip to content

Commit d07c967

Browse files
committed
Fix recursion issue in JIT
1 parent 4279abb commit d07c967

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/pcre2_jit_compile.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2909,14 +2909,15 @@ while (cc < ccend)
29092909
i = 1 + 32 / (int)sizeof(PCRE2_UCHAR);
29102910
#endif
29112911
if (PRIVATE_DATA(cc) != 0)
2912+
{
2913+
private_count = 1;
2914+
private_srcw[0] = PRIVATE_DATA(cc);
29122915
switch(get_class_iterator_size(cc + i))
29132916
{
29142917
case 1:
2915-
private_srcw[0] = PRIVATE_DATA(cc);
29162918
break;
29172919

29182920
case 2:
2919-
private_srcw[0] = PRIVATE_DATA(cc);
29202921
if (recurse_check_bit(common, private_srcw[0]))
29212922
{
29222923
private_count = 2;
@@ -2929,6 +2930,7 @@ while (cc < ccend)
29292930
SLJIT_UNREACHABLE();
29302931
break;
29312932
}
2933+
}
29322934
cc += i;
29332935
break;
29342936

0 commit comments

Comments
 (0)