diff options
author | Jorgen Lind <jorgen.lind@digia.com> | 2014-06-24 10:39:27 +0200 |
---|---|---|
committer | Jørgen Lind <jorgen.lind@digia.com> | 2014-06-26 10:17:36 +0200 |
commit | c750d8408ed3d114a05412ed5c699d83bdc1b568 (patch) | |
tree | 12b45fe9f30b38d30d4a3a33ce8eff21a6b1ef0e /src/widgets/itemviews | |
parent | a11f76fa54d6f3025ce914f6fe64acfb38fc37a2 (diff) |
Fix crash when inserting the same instance widget more than once
Task-number: QTBUG-39324
Change-Id: Ib1e0e107cd411311344aa5d85c3ca4c34211448b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Diffstat (limited to 'src/widgets/itemviews')
-rw-r--r-- | src/widgets/itemviews/qabstractitemview.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/widgets/itemviews/qabstractitemview.cpp b/src/widgets/itemviews/qabstractitemview.cpp index b2dc614b2b..342fdac636 100644 --- a/src/widgets/itemviews/qabstractitemview.cpp +++ b/src/widgets/itemviews/qabstractitemview.cpp @@ -3126,6 +3126,8 @@ void QAbstractItemView::setIndexWidget(const QModelIndex &index, QWidget *widget Q_D(QAbstractItemView); if (!d->isIndexValid(index)) return; + if (indexWidget(index) == widget) + return; if (QWidget *oldWidget = indexWidget(index)) { d->persistent.remove(oldWidget); d->removeEditor(oldWidget); |