diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2016-04-28 14:50:13 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2016-04-29 09:13:03 +0000 |
commit | 71dd7102f8333f522fa0845737ac356ba6c9b67f (patch) | |
tree | 75e746db68a40eb20253dc3dd7fb4f559018bd98 /src | |
parent | 89aa06e37def3bb9519a4fa364bf3de28c071d0d (diff) | |
download | qt-creator-71dd7102f8333f522fa0845737ac356ba6c9b67f.tar.gz |
TestEditor/ModelAdapter: Fix model to pass the model test.
Check for invalid (top level) or valid indexes in the overridden
functions. This prevents crashes due to accessibility traversing
the model.
Task-number: QTCREATORBUG-13142
Change-Id: I22d0831338436479e6ec3b215514bbb9513dffc7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/texteditor/codeassist/genericproposalwidget.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/plugins/texteditor/codeassist/genericproposalwidget.cpp b/src/plugins/texteditor/codeassist/genericproposalwidget.cpp index 6a792c152c..2da949edee 100644 --- a/src/plugins/texteditor/codeassist/genericproposalwidget.cpp +++ b/src/plugins/texteditor/codeassist/genericproposalwidget.cpp @@ -117,14 +117,14 @@ ModelAdapter::ModelAdapter(GenericProposalModel *completionModel, QWidget *paren , m_completionModel(completionModel) {} -int ModelAdapter::rowCount(const QModelIndex &) const +int ModelAdapter::rowCount(const QModelIndex &index) const { - return m_completionModel->size(); + return index.isValid() ? 0 : m_completionModel->size(); } QVariant ModelAdapter::data(const QModelIndex &index, int role) const { - if (index.row() >= m_completionModel->size()) + if (!index.isValid() || index.row() >= m_completionModel->size()) return QVariant(); if (role == Qt::DisplayRole) |