summaryrefslogtreecommitdiffstats
path: root/Parser/pgenmain.c
diff options
context:
space:
mode:
authorNeal Norwitz <nnorwitz@gmail.com>2006-04-10 06:42:25 (GMT)
committerNeal Norwitz <nnorwitz@gmail.com>2006-04-10 06:42:25 (GMT)
commit2c4e4f98397bcc591ad3a551e1e57cea0e2bd986 (patch)
treef200b67e22e157d409945e29f400e9766eb61beb /Parser/pgenmain.c
parent65c05b20e97a493b917fa71f10535512c713c662 (diff)
downloadcpython-2c4e4f98397bcc591ad3a551e1e57cea0e2bd986.zip
cpython-2c4e4f98397bcc591ad3a551e1e57cea0e2bd986.tar.gz
cpython-2c4e4f98397bcc591ad3a551e1e57cea0e2bd986.tar.bz2
SF patch #1467512, fix double free with triple quoted string in standard build.
This was the result of inconsistent use of PyMem_* and PyObject_* allocators. By changing to use PyObject_* allocator almost everywhere, this removes the inconsistency.
Diffstat (limited to 'Parser/pgenmain.c')
-rw-r--r--Parser/pgenmain.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/Parser/pgenmain.c b/Parser/pgenmain.c
index 695e2b7..6d8469f 100644
--- a/Parser/pgenmain.c
+++ b/Parser/pgenmain.c
@@ -104,7 +104,7 @@ getgrammar(char *filename)
putc(' ', stderr);
}
fprintf(stderr, "^\n");
- PyMem_DEL(err.text);
+ PyObject_FREE(err.text);
}
Py_Exit(1);
}
@@ -136,7 +136,7 @@ char *
PyOS_Readline(FILE *sys_stdin, FILE *sys_stdout, char *prompt)
{
size_t n = 1000;
- char *p = PyMem_MALLOC(n);
+ char *p = PyObject_MALLOC(n);
char *q;
if (p == NULL)
return NULL;
@@ -149,7 +149,7 @@ PyOS_Readline(FILE *sys_stdin, FILE *sys_stdout, char *prompt)
n = strlen(p);
if (n > 0 && p[n-1] != '\n')
p[n-1] = '\n';
- return PyMem_REALLOC(p, n+1);
+ return PyObject_REALLOC(p, n+1);
}
/* No-nonsense fgets */