From bdd2cefcf3236279986191f5d76a0af19d4d3a2b Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Tue, 25 Mar 2025 18:52:08 +0100 Subject: [PATCH] tst_QCompleter: fix memleak in hideWidget() QLineEdit::setCompleter() doesn't reparent the completer under the line edit, so this test function leaked the object (and with it, "22260 byte(s) leaked in 214 allocation(s)"; seriously, what does a QCompleter do with 20+KiB of memory!?). Fix by giving the completer the line edit as parent. Amends 24859d7deaf995e992f0d9439a1c476126d5f654. Pick-to: 6.9 6.8 Change-Id: Ic14a32c982dd4c75ae527188e53a7f20af714038 Reviewed-by: Eike Ziller Reviewed-by: Friedemann Kleint --- tests/auto/widgets/util/qcompleter/tst_qcompleter.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/auto/widgets/util/qcompleter/tst_qcompleter.cpp b/tests/auto/widgets/util/qcompleter/tst_qcompleter.cpp index ab6bc9bb3ec..eecb9cc42e0 100644 --- a/tests/auto/widgets/util/qcompleter/tst_qcompleter.cpp +++ b/tests/auto/widgets/util/qcompleter/tst_qcompleter.cpp @@ -1209,7 +1209,7 @@ void tst_QCompleter::hideWidget() w.setLayout(new QVBoxLayout); QLineEdit edit; - edit.setCompleter(new QCompleter({ "foo", "bar" })); + edit.setCompleter(new QCompleter({ "foo", "bar" }, &edit)); w.layout()->addWidget(&edit);