summaryrefslogtreecommitdiff
path: root/src/xmlpatterns/expr/qdynamiccontextstore.cpp
diff options
context:
space:
mode:
authorAri Koivisto <ari.koivisto@gmail.com>2012-10-03 19:29:33 +0300
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-10-14 22:58:42 +0200
commit3c3f8dd7c6f2a681ed11e941568ecc569377c389 (patch)
treedf7462a8f313355424c76b19221652dd187fd442 /src/xmlpatterns/expr/qdynamiccontextstore.cpp
parentdf4020d9d2580a1a4790a43af689d2b5132cf1e8 (diff)
downloadqtxmlpatterns-3c3f8dd7c6f2a681ed11e941568ecc569377c389.tar.gz
Fix XmlListModel memory leak
This is a forward port of a memory leak fix committed to Qt 4.8 (QTBUG-15191). The fix includes all changes except changes to qitem_p.h which has changed in Qt 5.0. Additionally fix qxmlquery autotest failure introduced in the original Qt 4.8 patch. Task-number: QTBUG-27357 Change-Id: Ia0e916d9d6bccea014d28920cef48d6e47e8f04f Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Diffstat (limited to 'src/xmlpatterns/expr/qdynamiccontextstore.cpp')
-rw-r--r--src/xmlpatterns/expr/qdynamiccontextstore.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/xmlpatterns/expr/qdynamiccontextstore.cpp b/src/xmlpatterns/expr/qdynamiccontextstore.cpp
index 3879cd6..2089456 100644
--- a/src/xmlpatterns/expr/qdynamiccontextstore.cpp
+++ b/src/xmlpatterns/expr/qdynamiccontextstore.cpp
@@ -51,24 +51,24 @@ using namespace QPatternist;
DynamicContextStore::DynamicContextStore(const Expression::Ptr &operand,
const DynamicContext::Ptr &context) : SingleContainer(operand),
- m_context(context)
+ m_context(context.data())
{
Q_ASSERT(context);
}
bool DynamicContextStore::evaluateEBV(const DynamicContext::Ptr &) const
{
- return m_operand->evaluateEBV(m_context);
+ return m_operand->evaluateEBV(DynamicContext::Ptr(m_context));
}
Item::Iterator::Ptr DynamicContextStore::evaluateSequence(const DynamicContext::Ptr &) const
{
- return m_operand->evaluateSequence(m_context);
+ return m_operand->evaluateSequence(DynamicContext::Ptr(m_context));
}
Item DynamicContextStore::evaluateSingleton(const DynamicContext::Ptr &) const
{
- return m_operand->evaluateSingleton(m_context);
+ return m_operand->evaluateSingleton(DynamicContext::Ptr(m_context));
}
SequenceType::Ptr DynamicContextStore::staticType() const