diff options
-rw-r--r-- | src/xmlpatterns/api/qabstractxmlnodemodel.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/xmlpatterns/api/qabstractxmlnodemodel.cpp b/src/xmlpatterns/api/qabstractxmlnodemodel.cpp index 1a24dcc..1779454 100644 --- a/src/xmlpatterns/api/qabstractxmlnodemodel.cpp +++ b/src/xmlpatterns/api/qabstractxmlnodemodel.cpp @@ -483,8 +483,9 @@ namespace QPatternist virtual QAbstractXmlForwardIterator<QXmlNodeModelIndexIteratorPointer>::Ptr copy() const { ItVector result; - - for(int i = 0; i < m_list.count(); ++i) + const int count = m_list.count(); + result.reserve(count); + for (int i = 0; i < count; ++i) result.append(m_list.at(i)->copy()); return Ptr(new IteratorVector(result)); @@ -501,6 +502,7 @@ static inline QXmlNodeModelIndexIteratorPointer mergeIterators(const QXmlNodeMod const QXmlNodeModelIndexIteratorPointer &it2) { QVector<QXmlNodeModelIndexIteratorPointer> iterators; + iterators.reserve(2); iterators.append(makeSingletonIterator(node)); iterators.append(it2); |