diff options
| author | Benjamin Kramer <benny.kra@googlemail.com> | 2012-04-14 09:11:56 +0000 |
|---|---|---|
| committer | Benjamin Kramer <benny.kra@googlemail.com> | 2012-04-14 09:11:56 +0000 |
| commit | ffe7c7f4b23c9d5efc50fbb1dee3c83b4dc6ac13 (patch) | |
| tree | a3ea3550ad46f359f4776388c7cf38bc3108491e /clang/lib | |
| parent | af7ae314dbd6ad9280c3b6530a6e1357f3079735 (diff) | |
| download | bcm5719-llvm-ffe7c7f4b23c9d5efc50fbb1dee3c83b4dc6ac13.tar.gz bcm5719-llvm-ffe7c7f4b23c9d5efc50fbb1dee3c83b4dc6ac13.zip | |
ASTUnit: Don't clone the new DiagnosticConsumer, causing it to get leaked.
llvm-svn: 154739
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Frontend/ASTUnit.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/Frontend/ASTUnit.cpp b/clang/lib/Frontend/ASTUnit.cpp index e32fa630a73..7aa96032ee3 100644 --- a/clang/lib/Frontend/ASTUnit.cpp +++ b/clang/lib/Frontend/ASTUnit.cpp @@ -643,8 +643,10 @@ void ASTUnit::ConfigureDiags(IntrusiveRefCntPtr<DiagnosticsEngine> &Diags, DiagnosticConsumer *Client = 0; if (CaptureDiagnostics) Client = new StoredDiagnosticConsumer(AST.StoredDiagnostics); - Diags = CompilerInstance::createDiagnostics(DiagOpts, ArgEnd- ArgBegin, - ArgBegin, Client); + Diags = CompilerInstance::createDiagnostics(DiagOpts, ArgEnd-ArgBegin, + ArgBegin, Client, + /*ShouldOwnClient=*/true, + /*ShouldCloneClient=*/false); } else if (CaptureDiagnostics) { Diags->setClient(new StoredDiagnosticConsumer(AST.StoredDiagnostics)); } |

