Open p5pRT opened 5 years ago
While fuzzing perl v5.29.8-21-gde59f38ed9 built with afl and run under libdislocator\, I found the following program
for$@(*0){eval}
to cause an assertion failure:
perl: sv.c:1581: char *Perl_sv_grow(SV *const\, STRLEN): Assertion `!isGV_with_GP(_svcur)' failed.
GDB stack trace is following
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1 0x00007ffff7c25535 in __GI_abort () at abort.c:79
#2 0x00007ffff7c2540f in __assert_fail_base (fmt=0x7ffff7d87ee0
"%s%s%s:%u: %s%sAssertion `%s' failed.\n%n"\,
assertion=0x555555a91f3e "!isGV_with_GP(_svcur)"\,
file=0x555555a90f80 "sv.c"\, line=1581\, function=\
On Mon\, 11 Mar 2019 16:21:20 -0700\, randir wrote:
While fuzzing perl v5.29.8-21-gde59f38ed9 built with afl and run under libdislocator\, I found the following program
for$@(*0){eval}
to cause an assertion failure:
I'm not sure what the correct behaviour should be here.
The obvious case is making it act like:
for $@(*0) { $@ = "" } # *0 = "" # set GP to that of *{""}
but that's not really what I expect from eval.
Tony
The RT System itself - Status changed from 'new' to 'open'
Migrated from rt.perl.org#133922 (status was 'open')
Searchable as RT133922$