diff options
author | Ted Kremenek <kremenek@apple.com> | 2008-07-15 17:43:41 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2008-07-15 17:43:41 +0000 |
commit | 176e2c519dba1a6883e8a1e6d38106750f1d74f6 (patch) | |
tree | 8d92a17076d6011186402f6b2cb1f1791ac74666 /clang/lib | |
parent | 78e9c0d69755cf9001c1834daf338a6923a252ca (diff) | |
download | bcm5719-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')
-rw-r--r-- | clang/lib/Analysis/CFRefCount.cpp | 6 |
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, |