aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqmlboundsignal.cpp
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@digia.com>2014-01-24 12:44:49 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-02-15 22:37:48 +0100
commit72420889aa54342da4472683e67e2c70b76a170f (patch)
tree3bbbb3a3f7b3286cb40f01763c42886bfd265500 /src/qml/qml/qqmlboundsignal.cpp
parent9424383e6d0ea1dd02dcf1070259e21550da692a (diff)
Add dedicated QML profiler and adapter
The remaining "profiling" parts of the QML profiler service are engine specific and are best accessed through their own adapter. Change-Id: Idb763104bdd80e4dabdf132ec1a496b9bc9f6f46 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Diffstat (limited to 'src/qml/qml/qqmlboundsignal.cpp')
-rw-r--r--src/qml/qml/qqmlboundsignal.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/qml/qml/qqmlboundsignal.cpp b/src/qml/qml/qqmlboundsignal.cpp
index d0476a92d4..e5a0df8c32 100644
--- a/src/qml/qml/qqmlboundsignal.cpp
+++ b/src/qml/qml/qqmlboundsignal.cpp
@@ -50,7 +50,7 @@
#include "qqml.h"
#include "qqmlcontext.h"
#include "qqmlglobal_p.h"
-#include <private/qqmlprofilerservice_p.h>
+#include <private/qqmlprofiler_p.h>
#include <private/qv4debugservice_p.h>
#include "qqmlinfo.h"
@@ -356,14 +356,13 @@ void QQmlBoundSignal_callback(QQmlNotifierEndpoint *e, void **a)
if (QQmlDebugService::isDebuggingEnabled())
QV4DebugService::instance()->signalEmitted(QString::fromLatin1(QMetaObjectPrivate::signal(s->m_expression->target()->metaObject(), s->m_index).methodSignature()));
- QQmlHandlingSignalProfiler prof(s->m_expression);
-
s->m_isEvaluating = true;
- if (s->m_expression && s->m_expression->engine()) {
+ QQmlEngine *engine;
+ if (s->m_expression && (engine = s->m_expression->engine())) {
+ QQmlHandlingSignalProfiler prof(QQmlEnginePrivate::get(engine)->profiler, s->m_expression);
s->m_expression->evaluate(a);
if (s->m_expression && s->m_expression->hasError()) {
- QQmlEngine *engine = s->m_expression->engine();
QQmlEnginePrivate::warning(engine, s->m_expression->error(engine));
}
}