diff options
author | Gurusamy Sarathy <gsar@cpan.org> | 2000-03-20 20:37:42 +0000 |
---|---|---|
committer | Gurusamy Sarathy <gsar@cpan.org> | 2000-03-20 20:37:42 +0000 |
commit | f08d6ad944c4ecbe4ec19c801b6b512b040abbf6 (patch) | |
tree | 971132355e9cddedcd5cac10b6ae1b74d0d74e18 /toke.c | |
parent | afd1915d434259c875b8da032bfece22c20f714f (diff) | |
download | perl-f08d6ad944c4ecbe4ec19c801b6b512b040abbf6.tar.gz |
change#5797 didn't do the right thing for "\xff\N{WHITE SMILING FACE}"
p4raw-link: @5797 on //depot/perl: e1992b6d91e50ab66a903c570e8d9c48f121f34b
p4raw-id: //depot/perl@5837
Diffstat (limited to 'toke.c')
-rw-r--r-- | toke.c | 8 |
1 files changed, 7 insertions, 1 deletions
@@ -1479,8 +1479,14 @@ S_scan_const(pTHX_ char *start) res = new_constant( Nullch, 0, "charnames", res, Nullsv, "\\N{...}" ); str = SvPV(res,len); - if (len > 1) + if (!has_utf && SvUTF8(res)) { + char *ostart = SvPVX(sv); + SvCUR_set(sv, d - ostart); + SvPOK_on(sv); + sv_utf8_upgrade(sv); + d = SvPVX(sv) + SvCUR(sv); has_utf = TRUE; + } if (len > e - s + 4) { char *odest = SvPVX(sv); |