ColumnPreferencesFrame: fix memory leaks
Delete model and proxy model in the destructor. QAbstractItemView::setItemDelegate() does not take ownership of the delegate that is passed to it. We have to store it ourselves and free it. Change-Id: I5d08d16e94a162d2a25450aec05ef672d4eaf528 Reviewed-on: https://code.wireshark.org/review/36878 Reviewed-by: Martin Kaiser <wireshark@kaiser.cx> Petri-Dish: Martin Kaiser <wireshark@kaiser.cx> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
This commit is contained in:
parent
183a0dfdd6
commit
d5ec6882fe
|
@ -61,7 +61,8 @@ ColumnPreferencesFrame::ColumnPreferencesFrame(QWidget *parent) :
|
|||
ui->deleteToolButton->setStockIcon("list-remove");
|
||||
|
||||
ui->columnTreeView->setModel(proxyModel_);
|
||||
ui->columnTreeView->setItemDelegate(new ColumnTypeDelegate());
|
||||
delegate_ = new ColumnTypeDelegate();
|
||||
ui->columnTreeView->setItemDelegate(delegate_);
|
||||
ui->columnTreeView->setSortingEnabled(false);
|
||||
|
||||
ui->columnTreeView->resizeColumnToContents(ColumnListModel::COL_DISPLAYED);
|
||||
|
@ -74,6 +75,9 @@ ColumnPreferencesFrame::ColumnPreferencesFrame(QWidget *parent) :
|
|||
|
||||
ColumnPreferencesFrame::~ColumnPreferencesFrame()
|
||||
{
|
||||
delete delegate_;
|
||||
delete proxyModel_;
|
||||
delete model_;
|
||||
delete ui;
|
||||
}
|
||||
|
||||
|
|
|
@ -33,6 +33,7 @@ private:
|
|||
Ui::ColumnPreferencesFrame *ui;
|
||||
ColumnListModel * model_;
|
||||
ColumnProxyModel * proxyModel_;
|
||||
ColumnTypeDelegate * delegate_;
|
||||
|
||||
private slots:
|
||||
void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected);
|
||||
|
|
Loading…
Reference in New Issue