diff options
author | Pablo Galindo <Pablogsal@gmail.com> | 2020-06-05 23:52:15 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-05 23:52:15 (GMT) |
commit | a54096e30523534e8eebb8dc1011b4536ed237a8 (patch) | |
tree | 9e905adc9c13fd843993cf3d6e4692fe240de5fb /Parser | |
parent | b084d1b97e369293d2d2bc0791e2135822c923a8 (diff) | |
download | cpython-a54096e30523534e8eebb8dc1011b4536ed237a8.zip cpython-a54096e30523534e8eebb8dc1011b4536ed237a8.tar.gz cpython-a54096e30523534e8eebb8dc1011b4536ed237a8.tar.bz2 |
bpo-40883: Fix memory leak in fstring_compile_expr in parse_string.c (GH-20667)
Diffstat (limited to 'Parser')
-rw-r--r-- | Parser/pegen/parse_string.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/Parser/pegen/parse_string.c b/Parser/pegen/parse_string.c index e24ecc5..efe82df 100644 --- a/Parser/pegen/parse_string.c +++ b/Parser/pegen/parse_string.c @@ -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; |