summaryrefslogtreecommitdiffstats
path: root/libbacktrace
diff options
context:
space:
mode:
authorChristopher Ferris <cferris@google.com>2014-08-05 02:28:01 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-08-05 02:28:01 +0000
commit1cbdb2f773191332f4610142bf9434c8b2ae41d4 (patch)
tree77abea3affd8fad698dc71d77d6cad00586c2bed /libbacktrace
parent42cad50fa7683da3f24722faf1e10a312dc3e18f (diff)
parentf02593b0e61f8108449770094caa7bb39a646ec1 (diff)
downloadsystem_core-1cbdb2f773191332f4610142bf9434c8b2ae41d4.zip
system_core-1cbdb2f773191332f4610142bf9434c8b2ae41d4.tar.gz
system_core-1cbdb2f773191332f4610142bf9434c8b2ae41d4.tar.bz2
am f02593b0: Allow getting an uncached process map.
* commit 'f02593b0e61f8108449770094caa7bb39a646ec1': Allow getting an uncached process map.
Diffstat (limited to 'libbacktrace')
-rw-r--r--libbacktrace/UnwindMap.cpp8
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);