mirror of
https://bitbucket.org/smil3y/kdelibs.git
synced 2025-02-24 10:52:49 +00:00
kdecore: MIME magic file parsing optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
parent
c29db4dd9c
commit
40ec626c27
1 changed files with 6 additions and 5 deletions
|
@ -392,7 +392,7 @@ QList<KMimeMagicRule> KMimeTypeRepository::parseMagicFile(QIODevice* file, const
|
|||
}
|
||||
QList<KMimeMagicMatch> matches; // toplevel matches (indent==0)
|
||||
int priority = 50;
|
||||
QString mimeTypeName;
|
||||
QByteArray mimeTypeName;
|
||||
|
||||
static const int sharedmimeinfover = mimeDataBaseVersion();
|
||||
static const int sharedmimeinfo200 = KDE_MAKE_VERSION(2, 0, 0);
|
||||
|
@ -406,10 +406,11 @@ QList<KMimeMagicRule> KMimeTypeRepository::parseMagicFile(QIODevice* file, const
|
|||
if (!mimeTypeName.isEmpty()) {
|
||||
// workaround for:
|
||||
// https://gitlab.freedesktop.org/xdg/shared-mime-info/-/issues/144
|
||||
if (sharedmimeinfover <= sharedmimeinfo200 && mimeTypeName == QLatin1String("audio/x-mod")) {
|
||||
if (sharedmimeinfover <= sharedmimeinfo200 && mimeTypeName == "audio/x-mod") {
|
||||
kDebug(servicesDebugArea()) << "Ignoring audio/x-mod magic rules";
|
||||
} else {
|
||||
rules.append(KMimeMagicRule(mimeTypeName, priority, matches));
|
||||
const QString mimeTypeNameStr = QString::fromLatin1(mimeTypeName.constData(), mimeTypeName.size());
|
||||
rules.append(KMimeMagicRule(mimeTypeNameStr, priority, matches));
|
||||
}
|
||||
matches.clear();
|
||||
mimeTypeName.clear();
|
||||
|
@ -418,8 +419,8 @@ QList<KMimeMagicRule> KMimeTypeRepository::parseMagicFile(QIODevice* file, const
|
|||
break; // done
|
||||
|
||||
// Parse new section
|
||||
const QString line = QString::fromLatin1(file->readLine());
|
||||
const int pos = line.indexOf(QLatin1Char(':'));
|
||||
const QByteArray line = file->readLine();
|
||||
const int pos = line.indexOf(':');
|
||||
if (pos == -1) { // syntax error
|
||||
kWarning(servicesDebugArea()) << "Syntax error in " << mimeTypeName
|
||||
<< " ':' not present in section name";
|
||||
|
|
Loading…
Add table
Reference in a new issue