[clang-tools-extra] r256562 - [clang-tidy] Fix a use-after-free bug found by asan
Benjamin Kramer via cfe-commits
cfe-commits at lists.llvm.org
Tue Dec 29 08:22:46 PST 2015
On Tue, Dec 29, 2015 at 5:14 PM, Alexander Kornienko via cfe-commits
<cfe-commits at lists.llvm.org> wrote:
> Author: alexfh
> Date: Tue Dec 29 10:14:38 2015
> New Revision: 256562
>
> URL: http://llvm.org/viewvc/llvm-project?rev=256562&view=rev
> Log:
> [clang-tidy] Fix a use-after-free bug found by asan
>
> Modified:
> clang-tools-extra/trunk/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
>
> Modified: clang-tools-extra/trunk/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
> URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/readability/SimplifyBooleanExprCheck.cpp?rev=256562&r1=256561&r2=256562&view=diff
> ==============================================================================
> --- clang-tools-extra/trunk/clang-tidy/readability/SimplifyBooleanExprCheck.cpp (original)
> +++ clang-tools-extra/trunk/clang-tidy/readability/SimplifyBooleanExprCheck.cpp Tue Dec 29 10:14:38 2015
> @@ -491,9 +491,10 @@ void SimplifyBooleanExprCheck::check(con
> 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();
Can you just drop the .str() and change the type back to StringRef?
- Ben
> Lexer Lex(CharRange.getBegin(), Result.Context->getLangOpts(),
> ReplacementText.data(), ReplacementText.data(),
> ReplacementText.data() + ReplacementText.size());
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
More information about the cfe-commits
mailing list