diff options
Diffstat (limited to 'src/qmldom/qqmldomitem.cpp')
-rw-r--r-- | src/qmldom/qqmldomitem.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/qmldom/qqmldomitem.cpp b/src/qmldom/qqmldomitem.cpp index 30ac7091bf..0a52a11121 100644 --- a/src/qmldom/qqmldomitem.cpp +++ b/src/qmldom/qqmldomitem.cpp @@ -2974,12 +2974,10 @@ void OwningItem::addError(DomItem &, ErrorMessage msg) void OwningItem::addErrorLocal(ErrorMessage msg) { QMutexLocker l(mutex()); - auto it = m_errors.constFind(msg.path); - while (it != m_errors.constEnd() && it->path == msg.path) { - if (*it++ == msg) - return; - } - m_errors.insert(msg.path, msg); + quint32 &c = m_errorsCounts[msg]; + c += 1; + if (c == 1) + m_errors.insert(msg.path, msg); } void OwningItem::clearErrors(ErrorGroups groups) |