diff options
author | Andreas König <a.koenig@mind.de> | 2002-01-24 13:45:44 +0100 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2002-01-24 15:44:31 +0000 |
commit | 290deeac09590d3d537138ffc29b7441c55f585a (patch) | |
tree | 1efda3b5c35de0f3aed6806b4c0d8086f4ee1b36 /pp_hot.c | |
parent | 879fa96f55d904836d80046db7f8557649d93011 (diff) | |
download | perl-290deeac09590d3d537138ffc29b7441c55f585a.tar.gz |
The
Subject: Very old debugger UTF-8 bug
Message-ID: <m3y9iot1jr.fsf@anima.de>
still broken, but this should work as a stopgap
measure to stop pp_match accessing naughty data.
p4raw-id: //depot/perl@14405
Diffstat (limited to 'pp_hot.c')
-rw-r--r-- | pp_hot.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -1322,6 +1322,9 @@ play_it_again: /*SUPPRESS 560*/ if ((rx->startp[i] != -1) && rx->endp[i] != -1 ) { len = rx->endp[i] - rx->startp[i]; + if (rx->endp[i] < 0 || rx->startp[i] < 0 || + len < 0 || len > strend - s) + DIE(aTHX_ "panic: pp_match start/end pointers"); s = rx->startp[i] + truebase; sv_setpvn(*SP, s, len); if (DO_UTF8(TARG) && is_utf8_string((U8*)s, len)) |