X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=malloc.c;h=988c905a792c7f789596581254c9a27ff4b9d196;hb=b8884ce4af9d0f622732315808561f174bd9be0c;hp=94fcb156322e3a65dea77a966062f0e5f9de05ec;hpb=5ba4cab2511d4ef0b3c9c7697485f3001a8cab63;p=p5sagit%2Fp5-mst-13.2.git diff --git a/malloc.c b/malloc.c index 94fcb15..988c905 100644 --- a/malloc.c +++ b/malloc.c @@ -1295,6 +1295,7 @@ write2(char *mess) static void botch(char *diag, char *s, char *file, int line) { + dVAR; if (!(PERL_MAYBE_ALIVE && PERL_GET_THX)) goto do_write; else { @@ -1408,6 +1409,7 @@ cmp_pat_4bytes(unsigned char *s, size_t nbytes, const unsigned char *fill) Malloc_t Perl_malloc(register size_t nbytes) { + dVAR; register union overhead *p; register int bucket; register MEM_SIZE shiftr; @@ -1665,6 +1667,7 @@ get_from_bigger_buckets(int bucket, MEM_SIZE size) static union overhead * getpages(MEM_SIZE needed, int *nblksp, int bucket) { + dVAR; /* Need to do (possibly expensive) system call. Try to optimize it for rare calling. */ MEM_SIZE require = needed - sbrked_remains; @@ -1865,6 +1868,7 @@ getpages_adjacent(MEM_SIZE require) static void morecore(register int bucket) { + dVAR; register union overhead *ovp; register int rnu; /* 2^rnu bytes will be requested */ int nblks; /* become nblks blocks of the desired size */ @@ -1997,11 +2001,12 @@ morecore(register int bucket) } Free_t -Perl_mfree(void *mp) +Perl_mfree(Malloc_t where) { + dVAR; register MEM_SIZE size; register union overhead *ovp; - char *cp = (char*)mp; + char *cp = (char*)where; #ifdef PACK_MALLOC u_char bucket; #endif @@ -2103,6 +2108,7 @@ Perl_mfree(void *mp) Malloc_t Perl_realloc(void *mp, size_t nbytes) { + dVAR; register MEM_SIZE onb; union overhead *ovp; char *res; @@ -2318,7 +2324,7 @@ Perl_strdup(const char *s) MEM_SIZE l = strlen(s); char *s1 = (char *)Perl_malloc(l+1); - return CopyD(s, s1, (MEM_SIZE)(l+1), char); + return (char *)CopyD(s, s1, (MEM_SIZE)(l+1), char); } #ifdef PERL_CORE @@ -2341,7 +2347,7 @@ Perl_putenv(char *a) if (l < sizeof(buf)) var = buf; else - var = Perl_malloc(l + 1); + var = (char *)Perl_malloc(l + 1); Copy(a, var, l, char); var[l + 1] = 0; my_setenv(var, val+1);