From dfd7b01fb2e06f44d082ac54b1dbd9a3aea3c0a2 Mon Sep 17 00:00:00 2001 From: Emmanuel Lepage Vallee <emmanuel.lepage@savoirfairelinux.com> Date: Thu, 19 Feb 2015 16:53:31 +0000 Subject: [PATCH] Fix an auto-completion crash when the PhoneDirectory have exactly 2 items Refs #38116 --- src/numbercompletionmodel.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/numbercompletionmodel.cpp b/src/numbercompletionmodel.cpp index 37f348b6..826d3acf 100644 --- a/src/numbercompletionmodel.cpp +++ b/src/numbercompletionmodel.cpp @@ -256,7 +256,7 @@ void NumberCompletionModelPrivate::updateModel() void NumberCompletionModelPrivate::getRange(QMap<QString,NumberWrapper*> map, const QString& prefix, QSet<ContactMethod*>& set) const { - if (prefix.isEmpty()) + if (prefix.isEmpty() || map.isEmpty()) return; QMap<QString,NumberWrapper*>::iterator iBeg = map.begin(); QMap<QString,NumberWrapper*>::iterator iEnd = map.end ()-1; @@ -302,7 +302,7 @@ void NumberCompletionModelPrivate::getRange(QMap<QString,NumberWrapper*> map, co size = ::ceil(size/2.0f); } - while (iBeg.key().left(prefixLen) != pref && iBeg != iEnd) + while (iBeg.key().left(prefixLen) != pref && iBeg != map.end() && iBeg != iEnd) ++iBeg; if (iEnd == iBeg && iBeg.key().left(prefixLen) != pref) { -- GitLab