QMimeProvider: de-duplicate some code
Drive-by change: use range-for with a QHash::asKeyValueRange(). Change-Id: I173d28d759bef8f23330338127eeff3018af4a55 Reviewed-by: David Faure <david.faure@kdab.com>bb10
parent
5083900ce3
commit
8d46cff650
|
|
@ -394,8 +394,7 @@ void QMimeBinaryProvider::addParents(const QString &mime, QStringList &result)
|
|||
const int parentOffset = m_cacheFile->getUint32(parentsOffset + 4 + 4 * i);
|
||||
const char *aParent = m_cacheFile->getCharStar(parentOffset);
|
||||
const QString strParent = QString::fromLatin1(aParent);
|
||||
if (!result.contains(strParent))
|
||||
result.append(strParent);
|
||||
appendIfNew(result, strParent);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
|
@ -442,8 +441,7 @@ void QMimeBinaryProvider::addAliases(const QString &name, QStringList &result)
|
|||
const int aliasOffset = m_cacheFile->getUint32(off);
|
||||
const char *alias = m_cacheFile->getCharStar(aliasOffset);
|
||||
const QString strAlias = QString::fromLatin1(alias);
|
||||
if (!result.contains(strAlias))
|
||||
result.append(strAlias);
|
||||
appendIfNew(result, strAlias);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -539,8 +537,7 @@ bool QMimeBinaryProvider::loadMimeTypePrivate(QMimeTypePrivate &data)
|
|||
if (mainPattern.isEmpty() && pattern.startsWith(u'*')) {
|
||||
mainPattern = pattern;
|
||||
}
|
||||
if (!extra.globPatterns.contains(pattern))
|
||||
extra.globPatterns.append(pattern);
|
||||
appendIfNew(extra.globPatterns, pattern);
|
||||
}
|
||||
xml.skipCurrentElement();
|
||||
}
|
||||
|
|
@ -829,13 +826,10 @@ void QMimeXMLProvider::addParent(const QString &child, const QString &parent)
|
|||
void QMimeXMLProvider::addAliases(const QString &name, QStringList &result)
|
||||
{
|
||||
// Iterate through the whole hash. This method is rarely used.
|
||||
for (auto it = m_aliases.constBegin(), end = m_aliases.constEnd() ; it != end ; ++it) {
|
||||
if (it.value() == name) {
|
||||
if (!result.contains(it.key()))
|
||||
result.append(it.key());
|
||||
}
|
||||
for (const auto &[alias, mimeName] : std::as_const(m_aliases).asKeyValueRange()) {
|
||||
if (mimeName == name)
|
||||
appendIfNew(result, alias);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
QString QMimeXMLProvider::resolveAlias(const QString &name)
|
||||
|
|
|
|||
Loading…
Reference in New Issue