From: Nicholas Clark Date: Fri, 31 Oct 2008 07:34:02 +0000 (+0000) Subject: sizeof(const SV *) is the same as sizeof(SV *), except that it doesn't X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=260890edab60aa2cfcb8de6aa9ee77abafa96e24;p=p5sagit%2Fp5-mst-13.2.git sizeof(const SV *) is the same as sizeof(SV *), except that it doesn't match my regexp for non-const casts. p4raw-id: //depot/perl@34677 --- diff --git a/av.c b/av.c index 7bd19ee..9ae95ae 100644 --- a/av.c +++ b/av.c @@ -134,7 +134,7 @@ Perl_av_extend(pTHX_ AV *av, I32 key) the current lazy system of only writing to it if our caller has a need for more space. NWC */ newmax = Perl_safesysmalloc_size((void*)AvALLOC(av)) / - sizeof(SV*) - 1; + sizeof(const SV *) - 1; if (key <= newmax) goto resized; @@ -145,20 +145,21 @@ Perl_av_extend(pTHX_ AV *av, I32 key) #if defined(STRANGE_MALLOC) || defined(MYMALLOC) Renew(AvALLOC(av),newmax+1, SV*); #else - bytes = (newmax + 1) * sizeof(SV*); + bytes = (newmax + 1) * sizeof(const SV *); #define MALLOC_OVERHEAD 16 itmp = MALLOC_OVERHEAD; while ((MEM_SIZE)(itmp - MALLOC_OVERHEAD) < bytes) itmp += itmp; itmp -= MALLOC_OVERHEAD; - itmp /= sizeof(SV*); + itmp /= sizeof(const SV *); assert(itmp > newmax); newmax = itmp - 1; assert(newmax >= AvMAX(av)); Newx(ary, newmax+1, SV*); Copy(AvALLOC(av), ary, AvMAX(av)+1, SV*); if (AvMAX(av) > 64) - offer_nice_chunk(AvALLOC(av), (AvMAX(av)+1) * sizeof(SV*)); + offer_nice_chunk(AvALLOC(av), + (AvMAX(av)+1) * sizeof(const SV *)); else Safefree(AvALLOC(av)); AvALLOC(av) = ary;