From df5f6224188cc82475eeb25b4daa3f2f6af40770 Mon Sep 17 00:00:00 2001 From: Shane Ringrose Date: Sun, 21 Jun 2026 00:38:07 +1200 Subject: [PATCH] Fix TerminalData memory leak in Terminal destructor Terminal stores its TerminalData* as member d but never deletes it. Every Element creation (placing on diagram, loading icon for the element browser, drag previews) leaks one TerminalData per terminal. ASan confirmed 112 leaked objects (9856 bytes) in a short session across four call sites all rooted in Element::parseTerminal. Co-Authored-By: Claude Sonnet 4.6 --- sources/qetgraphicsitem/terminal.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/sources/qetgraphicsitem/terminal.cpp b/sources/qetgraphicsitem/terminal.cpp index 941c2190c..1f06f3361 100644 --- a/sources/qetgraphicsitem/terminal.cpp +++ b/sources/qetgraphicsitem/terminal.cpp @@ -86,6 +86,7 @@ Terminal::Terminal(TerminalData* data, Element* e) : */ Terminal::~Terminal() { qDeleteAll(m_conductors_list); + delete d; } /**