From bfb37643287b83325a7a63630ef19885dac78d7c Mon Sep 17 00:00:00 2001 From: Ulf Hermann Date: Mon, 28 May 2018 17:19:47 +0200 Subject: QmlProfiler: Set the feature on Qml types when loading from qzt Otherwise they are all invalid and nothing is loaded. Change-Id: I12c71b231c81ce961754c1de67766010f00dd8d5 Task-number: QTCREATORBUG-20508 Reviewed-by: Tobias Hunger --- src/plugins/qmlprofiler/qmleventtype.cpp | 41 +++++++++++----------- .../qmlprofiler/tests/qmleventtype_test.cpp | 1 + 2 files changed, 22 insertions(+), 20 deletions(-) diff --git a/src/plugins/qmlprofiler/qmleventtype.cpp b/src/plugins/qmlprofiler/qmleventtype.cpp index c8cb6d2ae7..9cb99c0081 100644 --- a/src/plugins/qmlprofiler/qmleventtype.cpp +++ b/src/plugins/qmlprofiler/qmleventtype.cpp @@ -28,26 +28,6 @@ namespace QmlProfiler { -QDataStream &operator>>(QDataStream &stream, QmlEventType &type) -{ - quint8 message; - quint8 rangeType; - QString displayName; - stream >> displayName >> type.m_data >> type.m_location >> message >> rangeType - >> type.m_detailType; - type.setDisplayName(displayName); - type.m_message = static_cast(message); - type.m_rangeType = static_cast(rangeType); - return stream; -} - -QDataStream &operator<<(QDataStream &stream, const QmlEventType &type) -{ - return stream << type.displayName() << type.m_data << type.m_location - << static_cast(type.m_message) << static_cast(type.m_rangeType) - << type.m_detailType; -} - static ProfileFeature qmlFeatureFromType(Message message, RangeType rangeType, int detailType) { switch (message) { @@ -75,6 +55,27 @@ static ProfileFeature qmlFeatureFromType(Message message, RangeType rangeType, i } } +QDataStream &operator>>(QDataStream &stream, QmlEventType &type) +{ + quint8 message; + quint8 rangeType; + QString displayName; + stream >> displayName >> type.m_data >> type.m_location >> message >> rangeType + >> type.m_detailType; + type.setDisplayName(displayName); + type.m_message = static_cast(message); + type.m_rangeType = static_cast(rangeType); + type.setFeature(qmlFeatureFromType(type.m_message, type.m_rangeType, type.m_detailType)); + return stream; +} + +QDataStream &operator<<(QDataStream &stream, const QmlEventType &type) +{ + return stream << type.displayName() << type.m_data << type.m_location + << static_cast(type.m_message) << static_cast(type.m_rangeType) + << type.m_detailType; +} + QmlEventType::QmlEventType(Message message, RangeType rangeType, int detailType, const QmlEventLocation &location, const QString &data, const QString displayName) : diff --git a/src/plugins/qmlprofiler/tests/qmleventtype_test.cpp b/src/plugins/qmlprofiler/tests/qmleventtype_test.cpp index 8beebaa3f8..366298c6f4 100644 --- a/src/plugins/qmlprofiler/tests/qmleventtype_test.cpp +++ b/src/plugins/qmlprofiler/tests/qmleventtype_test.cpp @@ -136,6 +136,7 @@ void QmlEventTypeTest::testStreamOps() rstream >> type2; + QCOMPARE(type.feature(), type2.feature()); QCOMPARE(type.message(), type2.message()); QCOMPARE(type.rangeType(), type2.rangeType()); QCOMPARE(type.detailType(), type2.detailType()); -- cgit v1.2.1