diff options
Diffstat (limited to 'tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp')
-rw-r--r-- | tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp b/tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp index daca1d1516..237d4f8a29 100644 --- a/tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp +++ b/tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp @@ -248,6 +248,7 @@ private slots: void testFocusPolicy_data(); void testFocusPolicy(); void QTBUG31411_noSelection(); + void QTBUG39324_settingSameInstanceOfIndexWidget(); }; class MyAbstractItemDelegate : public QAbstractItemDelegate @@ -1830,5 +1831,22 @@ void tst_QAbstractItemView::QTBUG31411_noSelection() QCOMPARE(selectionChangeSpy.count(), 0); } +void tst_QAbstractItemView::QTBUG39324_settingSameInstanceOfIndexWidget() +{ + QStringList list; + list << "FOO" << "bar"; + QScopedPointer<QStringListModel> model(new QStringListModel(list)); + + QScopedPointer<QTableView> table(new QTableView()); + table->setModel(model.data()); + + QModelIndex index = model->index(0,0); + QLineEdit *lineEdit = new QLineEdit(); + table->setIndexWidget(index, lineEdit); + table->setIndexWidget(index, lineEdit); + QCoreApplication::sendPostedEvents(0, QEvent::DeferredDelete); + table->show(); +} + QTEST_MAIN(tst_QAbstractItemView) #include "tst_qabstractitemview.moc" |