mirror of https://github.com/python/cpython
bpo-40883: Fix memory leak in fstring_compile_expr in parse_string.c (GH-20667)
This commit is contained in:
parent
b084d1b97e
commit
a54096e305
|
@ -0,0 +1 @@
|
|||
Fix memory leak in when parsing f-strings in the new parser. Patch by Pablo Galindo
|
|
@ -604,6 +604,7 @@ fstring_compile_expr(Parser *p, const char *expr_start, const char *expr_end,
|
|||
|
||||
struct tok_state* tok = PyTokenizer_FromString(str, 1);
|
||||
if (tok == NULL) {
|
||||
PyMem_RawFree(str);
|
||||
return NULL;
|
||||
}
|
||||
Py_INCREF(p->tok->filename);
|
||||
|
@ -629,6 +630,7 @@ fstring_compile_expr(Parser *p, const char *expr_start, const char *expr_end,
|
|||
result = expr;
|
||||
|
||||
exit:
|
||||
PyMem_RawFree(str);
|
||||
_PyPegen_Parser_Free(p2);
|
||||
PyTokenizer_Free(tok);
|
||||
return result;
|
||||
|
|
Loading…
Reference in New Issue