changeset: 100674:dd887518b569 user: Victor Stinner date: Wed Mar 23 09:08:08 2016 +0100 files: Modules/_tracemalloc.c description: Issue #26588: Optimize tracemalloc_realloc() No need to remove the old trace if the memory block didn't move. diff -r 19c2840da45e -r dd887518b569 Modules/_tracemalloc.c --- a/Modules/_tracemalloc.c Wed Mar 23 02:05:39 2016 +0100 +++ b/Modules/_tracemalloc.c Wed Mar 23 09:08:08 2016 +0100 @@ -633,7 +633,12 @@ /* an existing memory block has been resized */ TABLES_LOCK(); - REMOVE_TRACE(ptr); + + /* tracemalloc_add_trace() updates the trace if there is already + a trace at address (domain, ptr2) */ + if (ptr2 != ptr) { + REMOVE_TRACE(ptr); + } if (ADD_TRACE(ptr2, new_size) < 0) { /* Memory allocation failed. The error cannot be reported to