From: Rafael Garcia-Suarez Date: Wed, 1 Mar 2006 22:39:24 +0000 (+0000) Subject: Don't put strings with embedded NULs in the environment. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=95a2b409a511e1c8014f7610e7fa60a947660625;p=p5sagit%2Fp5-mst-13.2.git Don't put strings with embedded NULs in the environment. This makes things like -d:Foo=bar work again. p4raw-id: //depot/perl@27359 --- diff --git a/perl.c b/perl.c index 7b6b4c7..d8077d6 100644 --- a/perl.c +++ b/perl.c @@ -3031,7 +3031,9 @@ Perl_moreswitches(pTHX_ char *s) sv_catpv(sv, start); else { sv_catpvn(sv, start, s-start); - Perl_sv_catpvf(aTHX_ sv, " split(/,/,q%c%s%c)", 0, ++s, 0); + /* Don't use NUL as q// delimiter here, this string goes in the + * environment. */ + Perl_sv_catpvf(aTHX_ sv, " split(/,/,q{%s});", ++s); } s += strlen(s); my_setenv("PERL5DB", SvPV_nolen_const(sv));