In perl.git, the branch blead has been updated <http://perl5.git.perl.org/perl.git/commitdiff/8df928d230eba79fc0097ab1c525ea0aaf62fd01?hp=51f69a247f06354aa055df45451b8b569803f561>
- Log ----------------------------------------------------------------- commit 8df928d230eba79fc0097ab1c525ea0aaf62fd01 Author: Yves Orton <[email protected]> Date: Tue Mar 15 21:07:05 2016 +0100 Call PERL_ASYNC_CHECK when we backtrack in the regex engine ----------------------------------------------------------------------- Summary of changes: regexec.c | 1 + t/re/pat.t | 12 +++++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/regexec.c b/regexec.c index cdaa95c..587b712 100644 --- a/regexec.c +++ b/regexec.c @@ -8426,6 +8426,7 @@ NULL yes_state = st->u.yes.prev_yes_state; state_num = st->resume_state + 1; /* failure = success + 1 */ + PERL_ASYNC_CHECK(); goto reenter_switch; } result = 0; diff --git a/t/re/pat.t b/t/re/pat.t index 295a9f7..e788b20 100644 --- a/t/re/pat.t +++ b/t/re/pat.t @@ -23,7 +23,7 @@ BEGIN { skip_all_without_unicode_tables(); } -plan tests => 789; # Update this when adding/deleting tests. +plan tests => 790; # Update this when adding/deleting tests. run_tests() unless caller; @@ -1758,6 +1758,16 @@ EOP fresh_perl_is($code, $expect, {}, "$bug - $test_name" ); } } + { + fresh_perl_is(' + BEGIN{require q(test.pl);} + watchdog(3); + $SIG{ALRM} = sub {print "Timeout\n"; exit(1)}; + alarm 1; + $_ = "a" x 1000 . "b" x 1000 . "c" x 1000; + /.*a.*b.*c.*[de]/; + ',"Timeout",{},"Test Perl 73464") + } } # End of sub run_tests 1; -- Perl5 Master Repository
