This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Perl_call_sv move EXTEND into branch that needs it
authorDaniel Dragan <bulk88@hotmail.com>
Fri, 25 Sep 2015 20:52:56 +0000 (16:52 -0400)
committerTony Cook <tony@develop-help.com>
Mon, 12 Oct 2015 23:10:23 +0000 (10:10 +1100)
commit8c9009ad13ddadd4e5865ef02a27df15933a7ca7
treed28ccbe492ccf723e62965c55da72ed6dc103505
parent5b434c735144bc31a3a65ae3aaa6fc636e105e1f
Perl_call_sv move EXTEND into branch that needs it

If we aren't manipulating the stack, dont fetch it, check and possibly
extend it. There is a slight chance this EXTEND was covering up missing
EXTENDs somewhere else in Perl core or CPAN C code, if future bisects or
valgrind reports show that this EXTEND by 1 must always be done, this
patch can be reverted. pp_method_named contains a EXTEND/XPUSH* call,
pp_entersub requires 1 arg on stack so, both sides of the
"if (!(flags & G_METHOD_NAMED))" test will in theory make sure there is
1 free slot on the stack on entry to a SUB or XSUB.

See also
http://www.nntp.perl.org/group/perl.perl5.porters/2015/09/msg231329.html
perl.c