summaryrefslogtreecommitdiff
path: root/src/plugins/texteditor
diff options
context:
space:
mode:
authorLeandro Melo <leandro.melo@nokia.com>2011-09-07 14:02:31 +0200
committerLeandro T. C. Melo <leandro.melo@nokia.com>2011-09-07 14:42:16 +0200
commite15443e9523df0e40414b1baf7d8182f641f7f2c (patch)
tree43113a66b11d66bdcb56bcb609ca75a8ea5273c2 /src/plugins/texteditor
parent1edf045a0e5bba46cf6b9e0b2d23bfa2808387ad (diff)
downloadqt-creator-e15443e9523df0e40414b1baf7d8182f641f7f2c.tar.gz
Code assist: Fix memory leak in completion
One fix is in the runner, which is part of the completion engine itself. The other is specific for C++. Task-number: QTCREATORBUG-5947 Change-Id: Ib8fff1eb5adad1ffb2a11da66c50b545e1457df8 Reviewed-on: http://codereview.qt.nokia.com/4355 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>
Diffstat (limited to 'src/plugins/texteditor')
-rw-r--r--src/plugins/texteditor/codeassist/runner.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/plugins/texteditor/codeassist/runner.cpp b/src/plugins/texteditor/codeassist/runner.cpp
index a6afedcc16..eaabb5f77a 100644
--- a/src/plugins/texteditor/codeassist/runner.cpp
+++ b/src/plugins/texteditor/codeassist/runner.cpp
@@ -34,6 +34,7 @@
#include "iassistprocessor.h"
#include "iassistproposal.h"
#include "iassistinterface.h"
+#include "iassistproposalmodel.h"
using namespace TextEditor;
using namespace Internal;
@@ -48,8 +49,11 @@ ProcessorRunner::ProcessorRunner()
ProcessorRunner::~ProcessorRunner()
{
delete m_processor;
- if (m_discardProposal)
+ if (m_discardProposal && m_proposal) {
+ // Proposal doesn't own the model, so we need to delete both.
+ delete m_proposal->model();
delete m_proposal;
+ }
}
void ProcessorRunner::setProcessor(IAssistProcessor *computer)