Fix recursion issue in JIT
This commit is contained in:
parent
4279abbd7d
commit
d07c967b3a
|
@ -2909,14 +2909,15 @@ while (cc < ccend)
|
||||||
i = 1 + 32 / (int)sizeof(PCRE2_UCHAR);
|
i = 1 + 32 / (int)sizeof(PCRE2_UCHAR);
|
||||||
#endif
|
#endif
|
||||||
if (PRIVATE_DATA(cc) != 0)
|
if (PRIVATE_DATA(cc) != 0)
|
||||||
|
{
|
||||||
|
private_count = 1;
|
||||||
|
private_srcw[0] = PRIVATE_DATA(cc);
|
||||||
switch(get_class_iterator_size(cc + i))
|
switch(get_class_iterator_size(cc + i))
|
||||||
{
|
{
|
||||||
case 1:
|
case 1:
|
||||||
private_srcw[0] = PRIVATE_DATA(cc);
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 2:
|
case 2:
|
||||||
private_srcw[0] = PRIVATE_DATA(cc);
|
|
||||||
if (recurse_check_bit(common, private_srcw[0]))
|
if (recurse_check_bit(common, private_srcw[0]))
|
||||||
{
|
{
|
||||||
private_count = 2;
|
private_count = 2;
|
||||||
|
@ -2929,6 +2930,7 @@ while (cc < ccend)
|
||||||
SLJIT_UNREACHABLE();
|
SLJIT_UNREACHABLE();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
cc += i;
|
cc += i;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue