summaryrefslogtreecommitdiffstats
path: root/src/corelib/statemachine
diff options
context:
space:
mode:
authorKent Hansen <kent.hansen@nokia.com>2012-07-04 22:14:24 +0200
committerQt by Nokia <qt-info@nokia.com>2012-07-10 06:20:55 +0200
commitd2a6f8e6dd96b015e2fe5c098331f0fd6387ce43 (patch)
tree229a54e9cf615f82c0e549c03457f925c98c38d9 /src/corelib/statemachine
parent130830e2d3b8925350e519ddfc562483bb16588f (diff)
statemachine: Tiny refactoring to avoid double lookup
Change-Id: I5040ca417dc12e1e0938ba7669b3017e414d13f9 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Diffstat (limited to 'src/corelib/statemachine')
-rw-r--r--src/corelib/statemachine/qstate.cpp2
-rw-r--r--src/corelib/statemachine/qstate_p.h2
-rw-r--r--src/corelib/statemachine/qstatemachine.cpp3
3 files changed, 4 insertions, 3 deletions
diff --git a/src/corelib/statemachine/qstate.cpp b/src/corelib/statemachine/qstate.cpp
index 39651b9736..27cec1d87e 100644
--- a/src/corelib/statemachine/qstate.cpp
+++ b/src/corelib/statemachine/qstate.cpp
@@ -242,7 +242,7 @@ void QState::assignProperty(QObject *object, const char *name,
}
for (int i = 0; i < d->propertyAssignments.size(); ++i) {
QPropertyAssignment &assn = d->propertyAssignments[i];
- if ((assn.object == object) && (assn.propertyName == name)) {
+ if (assn.hasTarget(object, name)) {
assn.value = value;
return;
}
diff --git a/src/corelib/statemachine/qstate_p.h b/src/corelib/statemachine/qstate_p.h
index 8b15f05ada..2c8141dbac 100644
--- a/src/corelib/statemachine/qstate_p.h
+++ b/src/corelib/statemachine/qstate_p.h
@@ -75,6 +75,8 @@ struct QPropertyAssignment
bool objectDeleted() const { return !object; }
void write() const { Q_ASSERT(object != 0); object->setProperty(propertyName, value); }
+ bool hasTarget(QObject *o, const QByteArray &pn) const
+ { return object == o && propertyName == pn; }
QPointer<QObject> object;
QByteArray propertyName;
diff --git a/src/corelib/statemachine/qstatemachine.cpp b/src/corelib/statemachine/qstatemachine.cpp
index e53d86a134..276e3f603f 100644
--- a/src/corelib/statemachine/qstatemachine.cpp
+++ b/src/corelib/statemachine/qstatemachine.cpp
@@ -743,8 +743,7 @@ void QStateMachinePrivate::applyProperties(const QList<QAbstractTransition*> &tr
for (it = propertyAssignmentsForState.constBegin(); it != propertyAssignmentsForState.constEnd(); ++it) {
const QList<QPropertyAssignment> &assignments = it.value();
for (int k = 0; k < assignments.size(); ++k) {
- if ((assignments.at(k).object == assn.object)
- && (assignments.at(k).propertyName == assn.propertyName)) {
+ if (assignments.at(k).hasTarget(assn.object, assn.propertyName)) {
found = true;
break;
}