[clang-tools-extra] r349145 - [clangd] Fix memory leak in ClangdTests.
Haojian Wu via cfe-commits
cfe-commits at lists.llvm.org
Fri Dec 14 05:19:39 PST 2018
Author: hokein
Date: Fri Dec 14 05:19:38 2018
New Revision: 349145
URL: http://llvm.org/viewvc/llvm-project?rev=349145&view=rev
Log:
[clangd] Fix memory leak in ClangdTests.
Summary:
createInvocationFromCommandLine sets DisableFree to true by default,
which leads memory leak in clangd. The fix is to use the `BuildCompilationInvocation`
to create CI with the correct options (DisableFree is false).
Fix https://bugs.llvm.org/show_bug.cgi?id=39991.
Reviewers: kadircet
Subscribers: ilya-biryukov, ioeric, MaskRay, jkorous, arphaman, cfe-commits
Differential Revision: https://reviews.llvm.org/D55702
Modified:
clang-tools-extra/trunk/unittests/clangd/TestTU.cpp
Modified: clang-tools-extra/trunk/unittests/clangd/TestTU.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/unittests/clangd/TestTU.cpp?rev=349145&r1=349144&r2=349145&view=diff
==============================================================================
--- clang-tools-extra/trunk/unittests/clangd/TestTU.cpp (original)
+++ clang-tools-extra/trunk/unittests/clangd/TestTU.cpp Fri Dec 14 05:19:38 2018
@@ -38,8 +38,10 @@ ParsedAST TestTU::build() const {
Inputs.Contents = Code;
Inputs.FS = buildTestFS({{FullFilename, Code}, {FullHeaderName, HeaderCode}});
auto PCHs = std::make_shared<PCHContainerOperations>();
+ auto CI = buildCompilerInvocation(Inputs);
+ assert(CI && "Failed to build compilation invocation.");
auto Preamble =
- buildPreamble(FullFilename, *createInvocationFromCommandLine(Cmd),
+ buildPreamble(FullFilename, *CI,
/*OldPreamble=*/nullptr,
/*OldCompileCommand=*/Inputs.CompileCommand, Inputs, PCHs,
/*StoreInMemory=*/true, /*PreambleCallback=*/nullptr);
More information about the cfe-commits
mailing list