diff options
-rw-r--r-- | app/perfunwind.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/app/perfunwind.cpp b/app/perfunwind.cpp index e277191..44ad704 100644 --- a/app/perfunwind.cpp +++ b/app/perfunwind.cpp @@ -957,6 +957,8 @@ void PerfUnwind::flushEventBuffer(uint desiredBufferSize) const auto childPid = taskEventIt->m_pid; const auto parentPid = taskEventIt->m_payload; symbolTable(childPid)->initAfterFork(symbolTable(parentPid)); + } else if (taskEventIt->m_type == ThreadEnd && taskEventIt->m_pid == taskEventIt->m_tid) { + delete m_symbolTables.take(taskEventIt->m_pid); } sendTaskEvent(*taskEventIt); |