diff options
author | Christopher Ferris <cferris@google.com> | 2014-08-04 17:08:46 -0700 |
---|---|---|
committer | Christopher Ferris <cferris@google.com> | 2014-08-04 17:17:57 -0700 |
commit | f02593b0e61f8108449770094caa7bb39a646ec1 (patch) | |
tree | 3192d870c0500137bcd1c4d033017f6febfc4595 /libbacktrace | |
parent | 3679d5f49a1e3caf69fffd1afa2d6139a0bfbb17 (diff) | |
download | system_core-f02593b0e61f8108449770094caa7bb39a646ec1.zip system_core-f02593b0e61f8108449770094caa7bb39a646ec1.tar.gz system_core-f02593b0e61f8108449770094caa7bb39a646ec1.tar.bz2 |
Allow getting an uncached process map.
Change-Id: I58d7e90a7b5c4476a4b9f51640c54d13748ac220
Diffstat (limited to 'libbacktrace')
-rw-r--r-- | libbacktrace/UnwindMap.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libbacktrace/UnwindMap.cpp b/libbacktrace/UnwindMap.cpp index 4f9831b..387d768 100644 --- a/libbacktrace/UnwindMap.cpp +++ b/libbacktrace/UnwindMap.cpp @@ -130,9 +130,13 @@ const backtrace_map_t* UnwindMapLocal::Find(uintptr_t addr) { //------------------------------------------------------------------------- // BacktraceMap create function. //------------------------------------------------------------------------- -BacktraceMap* BacktraceMap::Create(pid_t pid) { +BacktraceMap* BacktraceMap::Create(pid_t pid, bool uncached) { BacktraceMap* map; - if (pid == getpid()) { + + if (uncached) { + // Force use of the base class to parse the maps when this call is made. + map = new BacktraceMap(pid); + } else if (pid == getpid()) { map = new UnwindMapLocal(); } else { map = new UnwindMap(pid); |