[perl #120998] avoid caller() crashing on eval '' stack frames
authorTony Cook <tony@develop-help.com>
Tue, 8 Apr 2014 01:12:38 +0000 (11:12 +1000)
committerTony Cook <tony@develop-help.com>
Sun, 13 Apr 2014 22:56:37 +0000 (08:56 +1000)
commit78beb4ca6d139a7188817b2d3f61702d5cfd5365
tree96406bfb8f4f8f9a022b94b7a9b2be1eb6225d31
parent78269f095bc831a3ca7c226f93a5bba93565dfad
[perl #120998] avoid caller() crashing on eval '' stack frames

Starting from v5.17.3-150-g19bcb54e caller() on an eval frame would
end up calling Perl_sv_grow() with newlen = 0xFFFFFFFF on 32-bit
systems.

This eventually started segfaulting with v5.19.0-442-gcbcb2a1 which
added code to round up allocations to the nearest 0x100, setting
newlen to 0, faulting when sv_setpvn() attempted to copy its source
string into the zero space provided.
pp_ctl.c
t/op/caller.t