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()))
 {
 }
 

openSUSE Build Service is sponsored by