diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2014-08-09 02:27:31 +0200 |
---|---|---|
committer | Marc Mutz <marc.mutz@kdab.com> | 2014-08-15 19:19:20 +0200 |
commit | 09d6bbebc2857e39cc1780c32104a749f0db0bad (patch) | |
tree | 65e8b6dcd46551ef3b58034d61bbc6a81802c498 /src | |
parent | e60079a55cea16418999026606d084ed6741a2e6 (diff) |
QMimeData: replace an inefficient QList with a QVector
QMimeDataStruct is larger than a pointer, so holding it in a
QList is horribly inefficient.
Fix by marking as movable and holding in a QVector instead.
Change-Id: If285dd31546066db0b240ea0d4d30668f50b5f2c
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/corelib/kernel/qmimedata.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/corelib/kernel/qmimedata.cpp b/src/corelib/kernel/qmimedata.cpp index 3f2cd5a36a..f5057bc5f0 100644 --- a/src/corelib/kernel/qmimedata.cpp +++ b/src/corelib/kernel/qmimedata.cpp @@ -53,6 +53,7 @@ struct QMimeDataStruct QString format; QVariant data; }; +Q_DECLARE_TYPEINFO(QMimeDataStruct, Q_MOVABLE_TYPE); class QMimeDataPrivate : public QObjectPrivate { @@ -64,7 +65,7 @@ public: QVariant retrieveTypedData(const QString &format, QVariant::Type type) const; - QList<QMimeDataStruct> dataList; + QVector<QMimeDataStruct> dataList; }; void QMimeDataPrivate::removeData(const QString &format) |