From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Sun, 21 Jul 2024 13:12:13 +0000 (+0200) Subject: [3.13] gh-121390: tracemalloc: Fix tracebacks memory leak (GH-121391) (#121392) X-Git-Tag: v3.13.0rc1~79 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=4b76404a511c287a73e32eef927f7cc4377d3055;p=thirdparty%2FPython%2Fcpython.git [3.13] gh-121390: tracemalloc: Fix tracebacks memory leak (GH-121391) (#121392) gh-121390: tracemalloc: Fix tracebacks memory leak (GH-121391) The tracemalloc_tracebacks hash table has traceback keys and NULL values, but its destructors do not reflect this -- key_destroy_func is NULL while value_destroy_func is raw_free. Swap these to free the traceback keys instead. (cherry picked from commit db39bc42f90c151b298f97b780e62703adbf1221) Co-authored-by: Josh Brobst --- diff --git a/Python/tracemalloc.c b/Python/tracemalloc.c index fee7dd0e56d9..e58b60ddd5e4 100644 --- a/Python/tracemalloc.c +++ b/Python/tracemalloc.c @@ -838,7 +838,7 @@ _PyTraceMalloc_Init(void) tracemalloc_tracebacks = hashtable_new(hashtable_hash_traceback, hashtable_compare_traceback, - NULL, raw_free); + raw_free, NULL); tracemalloc_traces = tracemalloc_create_traces_table(); tracemalloc_domains = tracemalloc_create_domains_table();