Index: Source/core/xml/XPathPath.cpp |
diff --git a/Source/core/xml/XPathPath.cpp b/Source/core/xml/XPathPath.cpp |
index 50ca71218057c831f950a2cfee1acbfe690bd522..dbc25506bc0f6d46d18711990aba56669a8ca06d 100644 |
--- a/Source/core/xml/XPathPath.cpp |
+++ b/Source/core/xml/XPathPath.cpp |
@@ -36,13 +36,10 @@ |
namespace WebCore { |
namespace XPath { |
-Filter::Filter(PassOwnPtr<Expression> expr, const Vector<Predicate*>& predicates) |
+Filter::Filter(PassOwnPtr<Expression> expr, Vector<OwnPtr<Predicate> >& predicates) |
: m_expr(expr) |
{ |
- m_predicates.reserveInitialCapacity(predicates.size()); |
- for (size_t i = 0; i < predicates.size(); i++) |
- m_predicates.append(adoptPtr(predicates[i])); |
- |
+ m_predicates.swap(predicates); |
setIsContextNodeSensitive(m_expr->isContextNodeSensitive()); |
setIsContextPositionSensitive(m_expr->isContextPositionSensitive()); |
setIsContextSizeSensitive(m_expr->isContextSizeSensitive()); |