Update mime database from Qt

qtbase/8d46cff6504a4e33b78e4625dba1e7223a251dc3
  QMimeProvider: de-duplicate some code

Change-Id: I35dcbda67e88b59ba93a3859a2b87db74a1f11e9
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
This commit is contained in:
Eike Ziller
2024-08-27 15:21:58 +02:00
parent 39085d070c
commit 79705dfdb2

View File

@@ -426,8 +426,7 @@ void MimeBinaryProvider::addParents(const QString &mime, QStringList &result)
const int parentOffset = m_cacheFile->getUint32(parentsOffset + 4 + 4 * i); const int parentOffset = m_cacheFile->getUint32(parentsOffset + 4 + 4 * i);
const char *aParent = m_cacheFile->getCharStar(parentOffset); const char *aParent = m_cacheFile->getCharStar(parentOffset);
const QString strParent = QString::fromLatin1(aParent); const QString strParent = QString::fromLatin1(aParent);
if (!result.contains(strParent)) appendIfNew(result, strParent);
result.append(strParent);
} }
break; break;
} }
@@ -474,8 +473,7 @@ void MimeBinaryProvider::addAliases(const QString &name, QStringList &result)
const int aliasOffset = m_cacheFile->getUint32(off); const int aliasOffset = m_cacheFile->getUint32(off);
const char *alias = m_cacheFile->getCharStar(aliasOffset); const char *alias = m_cacheFile->getCharStar(aliasOffset);
const QString strAlias = QString::fromLatin1(alias); const QString strAlias = QString::fromLatin1(alias);
if (!result.contains(strAlias)) appendIfNew(result, strAlias);
result.append(strAlias);
} }
} }
} }
@@ -571,8 +569,7 @@ bool MimeBinaryProvider::loadMimeTypePrivate(MimeTypePrivate &data)
if (mainPattern.isEmpty() && pattern.startsWith(u'*')) { if (mainPattern.isEmpty() && pattern.startsWith(u'*')) {
mainPattern = pattern; mainPattern = pattern;
} }
if (!extra.globPatterns.contains(pattern)) appendIfNew(extra.globPatterns, pattern);
extra.globPatterns.append(pattern);
} }
xml.skipCurrentElement(); xml.skipCurrentElement();
} }
@@ -874,15 +871,12 @@ void MimeXMLProvider::addParent(const QString &child, const QString &parent)
void MimeXMLProvider::addAliases(const QString &name, QStringList &result) void MimeXMLProvider::addAliases(const QString &name, QStringList &result)
{ {
// Iterate through the whole hash. This method is rarely used. // Iterate through the whole hash. This method is rarely used.
for (auto it = m_aliases.constBegin(), end = m_aliases.constEnd() ; it != end ; ++it) { for (const auto &[alias, mimeName] : std::as_const(m_aliases).asKeyValueRange()) {
if (it.value() == name) { if (mimeName == name)
if (!result.contains(it.key())) appendIfNew(result, alias);
result.append(it.key());
} }
} }
}
QString MimeXMLProvider::resolveAlias(const QString &name) QString MimeXMLProvider::resolveAlias(const QString &name)
{ {
return m_aliases.value(name); return m_aliases.value(name);