summaryrefslogtreecommitdiffstats
path: root/clang/lib/Analysis
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2008-07-15 17:43:41 +0000
committerTed Kremenek <kremenek@apple.com>2008-07-15 17:43:41 +0000
commit176e2c519dba1a6883e8a1e6d38106750f1d74f6 (patch)
tree8d92a17076d6011186402f6b2cb1f1791ac74666 /clang/lib/Analysis
parent78e9c0d69755cf9001c1834daf338a6923a252ca (diff)
downloadbcm5719-llvm-176e2c519dba1a6883e8a1e6d38106750f1d74f6.tar.gz
bcm5719-llvm-176e2c519dba1a6883e8a1e6d38106750f1d74f6.zip
isRetain() and isRelease() now only returns true if "Retain"/"Release" appears in the suffix of a function's name.
llvm-svn: 53621
Diffstat (limited to 'clang/lib/Analysis')
-rw-r--r--clang/lib/Analysis/CFRefCount.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/Analysis/CFRefCount.cpp b/clang/lib/Analysis/CFRefCount.cpp
index 1777071c699..db7334f298d 100644
--- a/clang/lib/Analysis/CFRefCount.cpp
+++ b/clang/lib/Analysis/CFRefCount.cpp
@@ -694,11 +694,13 @@ RetainSummary* RetainSummaryManager::getNSSummary(FunctionDecl* FD,
}
static bool isRetain(FunctionDecl* FD, const char* FName) {
- return (strstr(FName, "Retain") != 0);
+ const char* loc = strstr(FName, "Retain");
+ return loc && loc[sizeof("Retain")-1] == '\0';
}
static bool isRelease(FunctionDecl* FD, const char* FName) {
- return (strstr(FName, "Release") != 0);
+ const char* loc = strstr(FName, "Release");
+ return loc && loc[sizeof("Release")-1] == '\0';
}
RetainSummary* RetainSummaryManager::getCFSummary(FunctionDecl* FD,
OpenPOWER on IntegriCloud