diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2001-12-14 04:07:08 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2001-12-14 04:07:08 +0000 |
commit | d90824e8c60f2fd870fd888b4d870ebe54c3eeb1 (patch) | |
tree | 9da7c224ed147b1476b2caa533f2c460ac064805 /utf8.c | |
parent | 88eeb692732a0bedeb3c070280522395f40efbd7 (diff) | |
download | perl-d90824e8c60f2fd870fd888b4d870ebe54c3eeb1.tar.gz |
Buffer overflow checks.
p4raw-id: //depot/perl@13681
Diffstat (limited to 'utf8.c')
-rw-r--r-- | utf8.c | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -927,7 +927,7 @@ Perl_to_uni_title(pTHX_ UV c, U8* p, STRLEN *lenp) UV Perl_to_uni_lower(pTHX_ UV c, U8* p, STRLEN *lenp) { - U8 tmpbuf[UTF8_MAXLEN+1]; + U8 tmpbuf[UTF8_MAXLEN_UCLC+1]; uvchr_to_utf8(tmpbuf, (UV)c); return to_utf8_lower(tmpbuf, p, lenp); } @@ -935,7 +935,7 @@ Perl_to_uni_lower(pTHX_ UV c, U8* p, STRLEN *lenp) UV Perl_to_uni_fold(pTHX_ UV c, U8* p, STRLEN *lenp) { - U8 tmpbuf[UTF8_MAXLEN+1]; + U8 tmpbuf[UTF8_MAXLEN_FOLD+1]; uvchr_to_utf8(tmpbuf, (UV)c); return to_utf8_fold(tmpbuf, p, lenp); } @@ -1247,7 +1247,8 @@ Perl_to_utf8_case(pTHX_ U8 *p, U8* ustrp, STRLEN *lenp, SV **swashp,char *normal return 0; } } - *lenp = UNISKIP(uv); + if *lenp) + *lenp = UNISKIP(uv); uvuni_to_utf8(ustrp, uv); return uv; } |