Fix duplicate mimetype elimination

This commit is contained in:
Martin T. H. Sandsmark 2016-07-13 01:57:26 +02:00
parent 99b5688725
commit f0323c26d0

View file

@ -4281,7 +4281,22 @@ QStringList Document::supportedMimeTypes() const
{
result << md.mimeTypes();
}
result.removeDuplicates();
// Remove duplicate mimetypes represented by different names
QMimeDatabase mimeDatabase;
QSet<QMimeType> uniqueMimetypes;
for (const QString &mimeName : result) {
uniqueMimetypes.insert(mimeDatabase.mimeTypeForName(mimeName));
}
result.clear();
for (const QMimeType &mimeType : uniqueMimetypes) {
result.append(mimeType.name());
}
// Sorting by mimetype name doesn't make a ton of sense,
// but ensures that the list is ordered the same way every time
qSort(result);
d->m_supportedMimeTypes = result;
}
return result;