Vladimir Marangozov's long-awaited malloc restructuring.

For more comments, read the patches@python.org archives.
For documentation read the comments in mymalloc.h and objimpl.h.

(This is not exactly what Vladimir posted to the patches list; I've
made a few changes, and Vladimir sent me a fix in private email for a
problem that only occurs in debug mode.  I'm also holding back on his
change to main.c, which seems unnecessary to me.)
This commit is contained in:
Guido van Rossum 2000-05-03 23:44:39 +00:00
parent 2808b744e8
commit b18618dab7
73 changed files with 658 additions and 407 deletions

View file

@ -139,7 +139,7 @@ getgrammar(filename)
putc(' ', stderr);
}
fprintf(stderr, "^\n");
free(err.text);
PyMem_DEL(err.text);
}
Py_Exit(1);
}
@ -196,7 +196,7 @@ PyOS_Readline(prompt)
char *prompt;
{
int n = 1000;
char *p = malloc(n);
char *p = PyMem_MALLOC(n);
char *q;
if (p == NULL)
return NULL;
@ -209,7 +209,7 @@ PyOS_Readline(prompt)
n = strlen(p);
if (n > 0 && p[n-1] != '\n')
p[n-1] = '\n';
return realloc(p, n+1);
return PyMem_REALLOC(p, n+1);
}
#ifdef HAVE_STDARG_PROTOTYPES