diff options
author | Aleix Pol <aleixpol@kde.org> | 2016-08-05 16:29:32 +0200 |
---|---|---|
committer | Aleix Pol <aleixpol@codereview.qt-project.org> | 2016-09-29 02:59:05 +0000 |
commit | 433e5ccf507fc153db589df80655618f241af0c3 (patch) | |
tree | 9eaaca90770ca58293798e3a20e9397498d4aaf1 /src/corelib/mimetypes | |
parent | d322ea4e7d40ff258d407b58e194e4e6c8a06cd5 (diff) |
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>
Diffstat (limited to 'src/corelib/mimetypes')
-rw-r--r-- | src/corelib/mimetypes/qmimeprovider.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/corelib/mimetypes/qmimeprovider.cpp b/src/corelib/mimetypes/qmimeprovider.cpp index a798d9eff6..e9996c204d 100644 --- a/src/corelib/mimetypes/qmimeprovider.cpp +++ b/src/corelib/mimetypes/qmimeprovider.cpp @@ -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); } } } |