diff options
Diffstat (limited to 'gnu/usr.bin/perl/doop.c')
-rw-r--r-- | gnu/usr.bin/perl/doop.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gnu/usr.bin/perl/doop.c b/gnu/usr.bin/perl/doop.c index 546d33d14c2..e999e344cdb 100644 --- a/gnu/usr.bin/perl/doop.c +++ b/gnu/usr.bin/perl/doop.c @@ -17,10 +17,8 @@ #include "perl.h" #ifndef PERL_MICRO -#if !defined(NSIG) || defined(M_UNIX) || defined(M_XENIX) #include <signal.h> #endif -#endif STATIC I32 S_do_trans_simple(pTHX_ SV *sv) @@ -670,6 +668,10 @@ Perl_do_join(pTHX_ register SV *sv, SV *del, register SV **mark, register SV **s } sv_setpv(sv, ""); + /* sv_setpv retains old UTF8ness [perl #24846] */ + if (SvUTF8(sv)) + SvUTF8_off(sv); + if (PL_tainting && SvMAGICAL(sv)) SvTAINTED_off(sv); |