summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
diff options
context:
space:
mode:
authorAlexander Kornienko <alexfh@google.com>2015-12-29 16:14:38 +0000
committerAlexander Kornienko <alexfh@google.com>2015-12-29 16:14:38 +0000
commit254825a3563e934f5c1df8634f2aac16fdfe890b (patch)
tree81621cf6bfad31ff63fe40c73e8ed1cf9fb17f99 /clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
parentc2e4bb421aa5f63278854b83286abddc5d8fe933 (diff)
downloadbcm5719-llvm-254825a3563e934f5c1df8634f2aac16fdfe890b.tar.gz
bcm5719-llvm-254825a3563e934f5c1df8634f2aac16fdfe890b.zip
[clang-tidy] Fix a use-after-free bug found by asan
llvm-svn: 256562
Diffstat (limited to 'clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp')
-rw-r--r--clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp b/clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
index 714874b2488..db09aaab985 100644
--- a/clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
+++ b/clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
@@ -491,9 +491,10 @@ void SimplifyBooleanExprCheck::check(const MatchFinder::MatchResult &Result) {
bool containsDiscardedTokens(
const ast_matchers::MatchFinder::MatchResult &Result,
CharSourceRange CharRange) {
- StringRef ReplacementText =
+ std::string ReplacementText =
Lexer::getSourceText(CharRange, *Result.SourceManager,
- Result.Context->getLangOpts()).str();
+ Result.Context->getLangOpts())
+ .str();
Lexer Lex(CharRange.getBegin(), Result.Context->getLangOpts(),
ReplacementText.data(), ReplacementText.data(),
ReplacementText.data() + ReplacementText.size());
OpenPOWER on IntegriCloud