summaryrefslogtreecommitdiffstats
path: root/include/backtrace/Backtrace.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/backtrace/Backtrace.h')
-rw-r--r--include/backtrace/Backtrace.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/include/backtrace/Backtrace.h b/include/backtrace/Backtrace.h
index b15678c..bf4efd3 100644
--- a/include/backtrace/Backtrace.h
+++ b/include/backtrace/Backtrace.h
@@ -33,7 +33,9 @@ public:
// If pid >= 0 and tid < 0, then the Backtrace object corresponds to a
// different process.
// Tracing a thread in a different process is not supported.
- static Backtrace* Create(pid_t pid, pid_t tid);
+ // If map_info is NULL, then create the map and manage it internally.
+ // If map_info is not NULL, the map is still owned by the caller.
+ static Backtrace* Create(pid_t pid, pid_t tid, backtrace_map_info_t* map_info = NULL);
virtual ~Backtrace();
@@ -70,7 +72,7 @@ public:
}
protected:
- Backtrace(BacktraceImpl* impl);
+ Backtrace(BacktraceImpl* impl, pid_t pid, backtrace_map_info_t* map_info);
virtual bool VerifyReadWordArgs(uintptr_t ptr, uint32_t* out_value);
@@ -78,6 +80,8 @@ protected:
backtrace_map_info_t* map_info_;
+ bool map_info_requires_delete_;
+
backtrace_t backtrace_;
friend class BacktraceImpl;