Reduce memory allocations when reading the QMimeType list
Use QTextStream::readLineInto instead of using N internal buffers temporarily to read the mime types file into a QSet<QString>. Change-Id: I05110a4d484cc9485ceb3bc2be2fc7c78f4b2434 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>bb10
parent
d322ea4e7d
commit
433e5ccf50
|
|
@ -536,11 +536,11 @@ void QMimeBinaryProvider::loadMimeTypeList()
|
|||
for (const QString &typeFilename : typesFilenames) {
|
||||
QFile file(typeFilename);
|
||||
if (file.open(QIODevice::ReadOnly)) {
|
||||
while (!file.atEnd()) {
|
||||
QByteArray line = file.readLine();
|
||||
line.chop(1);
|
||||
m_mimetypeNames.insert(QString::fromLatin1(line.constData(), line.size()));
|
||||
}
|
||||
QTextStream stream(&file);
|
||||
stream.setCodec("ISO 8859-1");
|
||||
QString line;
|
||||
while (stream.readLineInto(&line))
|
||||
m_mimetypeNames.insert(line);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue