diff options
author | Ted Kremenek <kremenek@apple.com> | 2010-08-06 21:12:49 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2010-08-06 21:12:49 +0000 |
commit | b0c67c85db0503112c85f7890f07838391729381 (patch) | |
tree | 60b8d589fd96e2471822890e01c870606aa14c5e /clang/lib/Checker/MallocChecker.cpp | |
parent | ead526a0567732d56bc08f73fc02786516be9122 (diff) | |
download | bcm5719-llvm-b0c67c85db0503112c85f7890f07838391729381.tar.gz bcm5719-llvm-b0c67c85db0503112c85f7890f07838391729381.zip |
Use 'GenerateNode()' instead of 'GenerateSink()' when reporting a leak. A leak is not a hard enough bug to stop analyzing a path.
llvm-svn: 110471
Diffstat (limited to 'clang/lib/Checker/MallocChecker.cpp')
-rw-r--r-- | clang/lib/Checker/MallocChecker.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/lib/Checker/MallocChecker.cpp b/clang/lib/Checker/MallocChecker.cpp index f6125636f2a..5ad1706e055 100644 --- a/clang/lib/Checker/MallocChecker.cpp +++ b/clang/lib/Checker/MallocChecker.cpp @@ -650,9 +650,8 @@ void MallocChecker::VisitLocation(CheckerContext &C, const Stmt *S, SVal l) { SymbolRef Sym = l.getLocSymbolInBase(); if (Sym) { const RefState *RS = C.getState()->get<RegionState>(Sym); - if (RS) - if (RS->isReleased()) { - ExplodedNode *N = C.GenerateSink(); + if (RS && RS->isReleased()) { + if (ExplodedNode *N = C.GenerateNode()) { if (!BT_UseFree) BT_UseFree = new BuiltinBug("Use dynamically allocated memory after" " it is freed."); @@ -661,6 +660,7 @@ void MallocChecker::VisitLocation(CheckerContext &C, const Stmt *S, SVal l) { N); C.EmitReport(R); } + } } } |