aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqmlboundsignal.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@theqtcompany.com>2015-05-03 19:55:42 +0200
committerSimon Hausmann <simon.hausmann@theqtcompany.com>2015-06-18 08:51:35 +0000
commit66fa2b979632d87f0ac9b3f1455df66411984670 (patch)
treedc723a2580c4cc99e2349801cdb98efa75024c17 /src/qml/qml/qqmlboundsignal.cpp
parent3488569817c8cf4bbfbdc95f0e0f6bfab3d9ab3e (diff)
Save another pointer in QQmlBoundSignal
isEvaluating is not really needed as it's tightly coupled to the isNotifying flag in the parent class. Use that instead, to get rid of it. Change-Id: Ic7274ac54e4d380567522c8a549b98d5ed1a1798 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Diffstat (limited to 'src/qml/qml/qqmlboundsignal.cpp')
-rw-r--r--src/qml/qml/qqmlboundsignal.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/qml/qml/qqmlboundsignal.cpp b/src/qml/qml/qqmlboundsignal.cpp
index 83aa3c55f0..0cf09024e6 100644
--- a/src/qml/qml/qqmlboundsignal.cpp
+++ b/src/qml/qml/qqmlboundsignal.cpp
@@ -248,7 +248,7 @@ void QQmlBoundSignalExpression::evaluate(void **a)
QQmlBoundSignal::QQmlBoundSignal(QObject *target, int signal, QObject *owner,
QQmlEngine *engine)
: m_prevSignal(0), m_nextSignal(0),
- m_expression(0), m_isEvaluating(false)
+ m_expression(0)
{
addToObject(owner);
setCallback(QQmlNotifierEndpoint::QQmlBoundSignal);
@@ -333,14 +333,13 @@ QQmlBoundSignalExpressionPointer QQmlBoundSignal::takeExpression(QQmlBoundSignal
void QQmlBoundSignal_callback(QQmlNotifierEndpoint *e, void **a)
{
QQmlBoundSignal *s = static_cast<QQmlBoundSignal*>(e);
+
if (!s->m_expression)
return;
if (QQmlDebugService::isDebuggingEnabled())
QV4DebugService::instance()->signalEmitted(QString::fromLatin1(QMetaObjectPrivate::signal(s->m_expression->target()->metaObject(), s->signalIndex()).methodSignature()));
- s->m_isEvaluating = true;
-
QQmlEngine *engine;
if (s->m_expression && (engine = s->m_expression->engine())) {
QQmlHandlingSignalProfiler prof(QQmlEnginePrivate::get(engine)->profiler, s->m_expression);
@@ -349,8 +348,6 @@ void QQmlBoundSignal_callback(QQmlNotifierEndpoint *e, void **a)
QQmlEnginePrivate::warning(engine, s->m_expression->error(engine));
}
}
-
- s->m_isEvaluating = false;
}
////////////////////////////////////////////////////////////////////////