summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/libs/tracing/timelinetracefile.cpp5
-rw-r--r--src/libs/tracing/timelinetracefile.h2
-rw-r--r--src/plugins/qmlprofiler/qmlprofilertracefile.cpp4
3 files changed, 11 insertions, 0 deletions
diff --git a/src/libs/tracing/timelinetracefile.cpp b/src/libs/tracing/timelinetracefile.cpp
index 858cddbb9d..52fc962360 100644
--- a/src/libs/tracing/timelinetracefile.cpp
+++ b/src/libs/tracing/timelinetracefile.cpp
@@ -67,6 +67,11 @@ void TimelineTraceFile::fail(const QString &message)
m_future.cancel();
}
+void TimelineTraceFile::finish()
+{
+ m_future.reportFinished();
+}
+
bool TimelineTraceFile::isCanceled() const
{
return m_future.isCanceled();
diff --git a/src/libs/tracing/timelinetracefile.h b/src/libs/tracing/timelinetracefile.h
index 4c1a255ba7..6be162f28a 100644
--- a/src/libs/tracing/timelinetracefile.h
+++ b/src/libs/tracing/timelinetracefile.h
@@ -64,7 +64,9 @@ public:
virtual void save(QIODevice *device) = 0;
virtual void load(QIODevice *device) = 0;
+
void fail(const QString &message);
+ void finish();
void setTraceStart(qint64 traceStart) { m_traceStart = traceStart; }
qint64 traceStart() const { return m_traceStart; }
diff --git a/src/plugins/qmlprofiler/qmlprofilertracefile.cpp b/src/plugins/qmlprofiler/qmlprofilertracefile.cpp
index 0a69f1324c..38ac383f36 100644
--- a/src/plugins/qmlprofiler/qmlprofilertracefile.cpp
+++ b/src/plugins/qmlprofiler/qmlprofilertracefile.cpp
@@ -191,6 +191,8 @@ void QmlProfilerTraceFile::loadQtd(QIODevice *device)
if (stream.hasError())
fail(tr("Error while parsing trace data file: %1").arg(stream.errorString()));
+ else
+ finish();
}
void QmlProfilerTraceFile::loadQzt(QIODevice *device)
@@ -285,6 +287,8 @@ void QmlProfilerTraceFile::loadQzt(QIODevice *device)
buffer.close();
setDeviceProgress(device);
}
+
+ finish();
}
void QmlProfilerTraceFile::addEventsProgress(qint64 timestamp)