X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=av.c;h=8a4f8556450239fe43fa3d95b777c45390cd5827;hb=265757707c25dcaf2ab1b88e3380267b0db1bcba;hp=086c75e56feb3c817fd152d69dc4ce4436c3f214;hpb=14befaf4eaa6e79d87aacb106e0b701e925483ee;p=p5sagit%2Fp5-mst-13.2.git diff --git a/av.c b/av.c index 086c75e..8a4f855 100644 --- a/av.c +++ b/av.c @@ -96,7 +96,7 @@ Perl_av_extend(pTHX_ AV *av, I32 key) } else { if (AvALLOC(av)) { -#ifndef STRANGE_MALLOC +#if !defined(STRANGE_MALLOC) && !defined(MYMALLOC) MEM_SIZE bytes; IV itmp; #endif @@ -130,7 +130,9 @@ Perl_av_extend(pTHX_ AV *av, I32 key) Safefree(AvALLOC(av)); AvALLOC(av) = ary; #endif +#if defined(MYMALLOC) && !defined(LEAKTEST) resized: +#endif ary = AvALLOC(av) + AvMAX(av) + 1; tmp = newmax - AvMAX(av); if (av == PL_curstack) { /* Oops, grew stack (via av_store()?) */ @@ -763,6 +765,7 @@ Perl_av_delete(pTHX_ AV *av, I32 key, I32 flags) else { sv = AvARRAY(av)[key]; if (key == AvFILLp(av)) { + AvARRAY(av)[key] = &PL_sv_undef; do { AvFILLp(av)--; } while (--key >= 0 && AvARRAY(av)[key] == &PL_sv_undef);