summaryrefslogtreecommitdiffstats
path: root/src/corelib/statemachine/qabstracttransition.cpp
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@kdab.com>2014-08-17 20:33:19 +0200
committerMarc Mutz <marc.mutz@kdab.com>2015-06-24 13:15:05 +0000
commitaa79adef6f7ce985138db535ef4d8fe3325b3fc3 (patch)
treee60d32f633ca637c92c7795a19f65bb7dd47ff97 /src/corelib/statemachine/qabstracttransition.cpp
parent931f9c23ee884fe929aed50404a29776826d8bd4 (diff)
QAbstractTransition: don't hold QPointers in QList
QPointer is larger than a void*, so holding them in a QList is needlessly inefficient. Worse, the code could come to depend on the fragile property of (inefficient) QLists that references to elements therein never are invalidated. Change-Id: I52e83a26eda06fb9826e9c4773a7a0b84b0f59c7 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Diffstat (limited to 'src/corelib/statemachine/qabstracttransition.cpp')
-rw-r--r--src/corelib/statemachine/qabstracttransition.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/corelib/statemachine/qabstracttransition.cpp b/src/corelib/statemachine/qabstracttransition.cpp
index 81b38ea4c4..7f04160a8f 100644
--- a/src/corelib/statemachine/qabstracttransition.cpp
+++ b/src/corelib/statemachine/qabstracttransition.cpp
@@ -254,7 +254,7 @@ QList<QAbstractState*> QAbstractTransition::targetStates() const
void QAbstractTransition::setTargetStates(const QList<QAbstractState*> &targets)
{
Q_D(QAbstractTransition);
- QList<QPointer<QAbstractState> > copy(d->targetStates);
+ QVector<QPointer<QAbstractState> > copy(d->targetStates);
bool sameList = true;
for (int i = 0; i < targets.size(); ++i) {
QAbstractState *target = targets.at(i);