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 <noreply@anthropic.com>
This commit is contained in:
Shane Ringrose
2026-06-21 00:38:07 +12:00
parent a8e2a7acff
commit df5f622418
+1
View File
@@ -86,6 +86,7 @@ Terminal::Terminal(TerminalData* data, Element* e) :
*/
Terminal::~Terminal() {
qDeleteAll(m_conductors_list);
delete d;
}
/**