X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pad.h;h=352a592f8324b986cdaebb3faf1ac494e9032a65;hb=6f15df4765b853018c7db3e5cae157305d7c5e12;hp=10e094eef2bb5a480ba6d2ba4eba34484523711e;hpb=a062e10d14f53c3718ae4dbf13be27233d85afcc;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pad.h b/pad.h index 10e094e..352a592 100644 --- a/pad.h +++ b/pad.h @@ -239,7 +239,7 @@ Restore the old pad saved into the local variable opad by PAD_SAVE_LOCAL() PTR2UV(PL_comppad), PTR2UV(PL_curpad))); #define PAD_RESTORE_LOCAL(opad) \ - PL_comppad = opad; \ + PL_comppad = opad && SvIS_FREED(opad) ? NULL : opad; \ PL_curpad = PL_comppad ? AvARRAY(PL_comppad) : NULL; \ DEBUG_Xv(PerlIO_printf(Perl_debug_log, \ "Pad 0x%"UVxf"[0x%"UVxf"] restore_local\n", \