Fix memory leak in QXmlQuery::setQuery.
authorNiklas Kurkisuo <ext-niklas.kurkisuo@nokia.com>
Fri, 3 Dec 2010 11:50:36 +0000 (13:50 +0200)
committerDavid Boddie <david.boddie@nokia.com>
Fri, 13 May 2011 13:56:29 +0000 (15:56 +0200)
commit23267553627ac3c4cbcd918283bee8e665deeff9
tree9301d656c9cd80c81192538231f0731c0b3c7850
parent3d27a19ca009836b812b59c3359db1369d391181
Fix memory leak in QXmlQuery::setQuery.

There is a circular reference dependency between VariableDeclaration
and the classes EvaluationCache, ExpressionVariableReference and
TemplateParameterReference. By removing the explicitly shared pointer
of VariableDeclaration in these classes the circle is broken and memory
is freed correctly.

Task-number: QT-4106
Integrated-by: David Boddie
src/xmlpatterns/expr/qevaluationcache.cpp
src/xmlpatterns/expr/qevaluationcache_p.h
src/xmlpatterns/expr/qexpressionvariablereference.cpp
src/xmlpatterns/expr/qexpressionvariablereference_p.h
src/xmlpatterns/expr/qtemplateparameterreference.cpp
src/xmlpatterns/expr/qtemplateparameterreference_p.h
src/xmlpatterns/expr/quserfunctioncallsite.cpp
src/xmlpatterns/parser/qquerytransformparser.cpp