File Lowercase-the-lookup-key-for-mimetypes.patch of Package kdelibs4
--- a/kdecore/services/kmimetype.cpp
+++ b/kdecore/services/kmimetype.cpp
@@ -205,7 +205,7 @@ KMimeType::Ptr KMimeType::findByUrlHelper( const KUrl& _url, mode_t mode,
// We disambiguate multiple glob matches by sniffing, below.
if ( mimeList.count() == 1 ) {
const QString selectedMime = mimeList.at(0);
- KMimeType::Ptr mime = mimeType(selectedMime);
+ KMimeType::Ptr mime = mimeType(selectedMime.toLower());
if (!mime) {
// #265188 - this can happen when an old globs file is lying around after
// the packages xml file was removed.
@@ -267,7 +267,7 @@ KMimeType::Ptr KMimeType::findByUrlHelper( const KUrl& _url, mode_t mode,
// At least make this deterministic
qSort(mimeList.begin(), mimeList.end());
Q_FOREACH(const QString& mimeName, mimeList) {
- KMimeType::Ptr mime = mimeType(mimeName);
+ KMimeType::Ptr mime = mimeType(mimeName.toLower());
if (!mime)
kWarning() << "Glob file refers to" << mimeName << "but this mimetype does not exist!";
else
@@ -652,7 +652,7 @@ void KMimeTypePrivate::ensureXmlDataLoaded() const
const QString name = xml.attributes().value(QLatin1String("type")).toString();
if (name.isEmpty())
continue;
- if (name != m_strName) {
+ if (name.toLower() != m_strName) {
kWarning() << "Got name" << name << "in file" << file << "expected" << m_strName;
}
--- a/kdecore/services/kmimetypefactory.cpp
+++ b/kdecore/services/kmimetypefactory.cpp
@@ -48,13 +48,13 @@
if (!sycocaDict())
return -1; // Error!
assert (!KSycoca::self()->isBuilding());
- const int offset = sycocaDict()->find_string(mimeTypeName);
+ const int offset = sycocaDict()->find_string(mimeTypeName.toLower());
return offset;
}
int KMimeTypeFactory::serviceOffersOffset(const QString& mimeTypeName)
{
- const int offset = entryOffset(mimeTypeName);
+ const int offset = entryOffset(mimeTypeName.toLower());
if (!offset)
return -1; // Not found
@@ -62,7 +62,7 @@ int KMimeTypeFactory::serviceOffersOffset(const QString &mimeTypeName)
if (!newMimeType)
return -1;
// Check whether the dictionary was right.
- if (newMimeType->name() != mimeTypeName) {
+ if (newMimeType->name() != mimeTypeName.toLower()) {
// No it wasn't...
return -1;
}
@@ -142,7 +142,7 @@
};
KMimeTypeFactory::MimeTypeEntry::MimeTypeEntry(const QString& file, const QString& name)
- : KSycocaEntry(*new MimeTypeEntryPrivate(file, name))
+ : KSycocaEntry(*new MimeTypeEntryPrivate(file, name.toLower()))
{
}