aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/cplusplus/pp-engine.cpp
diff options
context:
space:
mode:
authorNikolai Kosjar <[email protected]>2012-09-17 14:46:19 +0200
committerChristian Kamm <[email protected]>2012-09-19 11:10:00 +0200
commit2f88a46e4e098025e60fd7bb53ba21eb49ab11a3 (patch)
tree7d751605b4cef55a92fb3b3a0fd890f45445bc2f /src/libs/cplusplus/pp-engine.cpp
parentadb40fadb6f9c7ca04cea0dd4febce515dd1e2ac (diff)
C++: Fix memory leak in preprocessor.
This addresses the main memory leak revealed in QTCREATORBUG-7645. The other leaks seem to have their origin in Qt. Task-Number: QTCREATORBUG-7645. Change-Id: I77f45449416c143b222ed5f5c905cba9674f95bb Reviewed-by: Christian Kamm <[email protected]>
Diffstat (limited to 'src/libs/cplusplus/pp-engine.cpp')
-rw-r--r--src/libs/cplusplus/pp-engine.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/libs/cplusplus/pp-engine.cpp b/src/libs/cplusplus/pp-engine.cpp
index 3f94652ee66..4a62b20757b 100644
--- a/src/libs/cplusplus/pp-engine.cpp
+++ b/src/libs/cplusplus/pp-engine.cpp
@@ -1297,6 +1297,8 @@ void Preprocessor::preprocess(const QString &fileName, const QByteArray &source,
removeTrailingOutputLines();
delete m_state.m_lexer;
+ while (m_state.m_tokenBuffer)
+ m_state.popTokenBuffer();
m_state = savedState;
m_env->currentFile = previousFileName;