From 2f67e4b63d664490310e485d59fdd500b7eb0bc5 Mon Sep 17 00:00:00 2001 From: Fushan Wen Date: Fri, 23 Jun 2023 07:55:44 +0800 Subject: [PATCH] libtaskmanager: fix a potential leak Pointers in rowMap are not deleted before they are removed in rowMap. (cherry picked from commit 19c0022735e74cf028daa93e36d257c804862954) --- libtaskmanager/taskgroupingproxymodel.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/libtaskmanager/taskgroupingproxymodel.cpp b/libtaskmanager/taskgroupingproxymodel.cpp index afdde61d97..ea68bee556 100644 --- a/libtaskmanager/taskgroupingproxymodel.cpp +++ b/libtaskmanager/taskgroupingproxymodel.cpp @@ -778,6 +778,7 @@ void TaskGroupingProxyModel::setSourceModel(QAbstractItemModel *sourceModel) connect(sourceModel, &QSortFilterProxyModel::modelReset, this, std::bind(&TaskGroupingProxyModel::Private::sourceModelReset, dd)); connect(sourceModel, &QSortFilterProxyModel::dataChanged, this, std::bind(&TaskGroupingProxyModel::Private::sourceDataChanged, dd, _1, _2, _3)); } else { + qDeleteAll(d->rowMap); d->rowMap.clear(); } -- GitLab