summaryrefslogtreecommitdiffstats
path: root/src/sql
diff options
context:
space:
mode:
authorMark Brand <mabrand@mabrand.nl>2012-02-13 08:46:23 +0100
committerQt by Nokia <qt-info@nokia.com>2012-02-15 02:36:42 +0100
commit22e0060e596c73e614f88f1269893214cf24bf6a (patch)
treef3834b2db36ba8b19acd43878d12a825c93f2ddc /src/sql
parent76fa96b99e9ee79d0a2016fb28f17bc2dc58ab0a (diff)
QSqlTableModel::indexInQuery(): fix for inserted rows
Should return invalid QModelIndex since inserted row does not map to query. Change-Id: Ib1d15cf4198a7063717fb3f3b594b2b1d8a54dfe Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
Diffstat (limited to 'src/sql')
-rw-r--r--src/sql/models/qsqltablemodel.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/sql/models/qsqltablemodel.cpp b/src/sql/models/qsqltablemodel.cpp
index b21a965c21..932bbbfd6b 100644
--- a/src/sql/models/qsqltablemodel.cpp
+++ b/src/sql/models/qsqltablemodel.cpp
@@ -1143,6 +1143,9 @@ int QSqlTableModel::rowCount(const QModelIndex &parent) const
QModelIndex QSqlTableModel::indexInQuery(const QModelIndex &item) const
{
Q_D(const QSqlTableModel);
+ if (d->cache.value(item.row()).op() == QSqlTableModelPrivate::Insert)
+ return QModelIndex();
+
const int rowOffset = d->insertCount(item.row());
return QSqlQueryModel::indexInQuery(createIndex(item.row() - rowOffset, item.column(), item.internalPointer()));
}