perf map: Use strstarts() to look for Android libraries
And add the '/' to avoid looking at things like "/system/libsomething", when all we want to know if it is like "/system/lib/something", i.e. if it is in that system library dir. Using strstarts() avoids off-by-one errors like recently fixed in this file. Since this adds the '/' I separated this patch, another patch will make this consistent by removing other strncmp(str, prefix, manually calculated prefix length) usage. Reported-by: Dominik Czarnota <dominik.b.czarnota@gmail.com> Acked-by: Dominik Czarnota <dominik.b.czarnota@gmail.com> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Link: Link: http://lore.kernel.org/lkml/CABEVAa0_q-uC0vrrqpkqRHy_9RLOSXOJxizMLm1n5faHRy2AeA@mail.gmail.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
b8fdcfb5a1
commit
bdadd647cb
|
@ -44,8 +44,8 @@ static inline int is_no_dso_memory(const char *filename)
|
|||
|
||||
static inline int is_android_lib(const char *filename)
|
||||
{
|
||||
return !strncmp(filename, "/data/app-lib", 13) ||
|
||||
!strncmp(filename, "/system/lib", 11);
|
||||
return strstarts(filename, "/data/app-lib/") ||
|
||||
strstarts(filename, "/system/lib/");
|
||||
}
|
||||
|
||||
static inline bool replace_android_lib(const char *filename, char *newfilename)
|
||||
|
@ -65,7 +65,7 @@ static inline bool replace_android_lib(const char *filename, char *newfilename)
|
|||
|
||||
app_abi_length = strlen(app_abi);
|
||||
|
||||
if (!strncmp(filename, "/data/app-lib", 13)) {
|
||||
if (strstarts(filename, "/data/app-lib/")) {
|
||||
char *apk_path;
|
||||
|
||||
if (!app_abi_length)
|
||||
|
@ -89,7 +89,7 @@ static inline bool replace_android_lib(const char *filename, char *newfilename)
|
|||
return true;
|
||||
}
|
||||
|
||||
if (!strncmp(filename, "/system/lib/", 12)) {
|
||||
if (strstarts(filename, "/system/lib/")) {
|
||||
char *ndk, *app;
|
||||
const char *arch;
|
||||
size_t ndk_length;
|
||||
|
|
Loading…
Reference in New Issue