This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Remove unnecessary TAINT_NOT
authorFather Chrysostomos <sprout@cpan.org>
Wed, 8 Jun 2011 00:56:06 +0000 (17:56 -0700)
committerFather Chrysostomos <sprout@cpan.org>
Wed, 8 Jun 2011 03:44:46 +0000 (20:44 -0700)
(Ignore this for perldelta.)

*++newsp = *MARK obviously does no tainting.  The TAINT_NOT following
it was unnecessarily copied to S_return_lvalues from pp_return when
the former came into existence.  (pp_return does need TAINT_NOT, as it
uses sv_mortalcopy, which calls sv_setsv_flags, which does tainting.)

pp_ctl.c

index 868ef01..c600a91 100644 (file)
--- a/pp_ctl.c
+++ b/pp_ctl.c
@@ -2261,7 +2261,6 @@ S_return_lvalues(pTHX_ SV **mark, SV **sp, SV **newsp, I32 gimme,
                       : sv_2mortal(SvREFCNT_inc_simple_NN(*MARK));
        else while (++MARK <= SP) {
            *++newsp = *MARK;
                       : sv_2mortal(SvREFCNT_inc_simple_NN(*MARK));
        else while (++MARK <= SP) {
            *++newsp = *MARK;
-           TAINT_NOT;          /* Each item is independent */
        }
     }
     PL_stack_sp = newsp;
        }
     }
     PL_stack_sp = newsp;