summaryrefslogtreecommitdiff
path: root/linker/linker.cpp
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2016-06-20 20:22:18 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2016-06-20 20:22:18 +0000
commit801dfc03cb0a439de7d901f230848cb585622479 (patch)
tree98509bd9ed51501c57575e854bde60f3938f36d8 /linker/linker.cpp
parent835bd47cc4b59488a24aeb28989097ca701d466b (diff)
parent3cc387eff4faaaf02a879518fc4139896b60b79a (diff)
Merge "Lose debuggerd client code to libdebuggerd_client."
Diffstat (limited to 'linker/linker.cpp')
-rw-r--r--linker/linker.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/linker/linker.cpp b/linker/linker.cpp
index e2d57f0e5..0fe0c38e7 100644
--- a/linker/linker.cpp
+++ b/linker/linker.cpp
@@ -61,6 +61,7 @@
#include "linker_utils.h"
#include "android-base/strings.h"
+#include "debuggerd/client.h"
#include "ziparchive/zip_archive.h"
extern void __libc_init_globals(KernelArgumentBlock&);
@@ -4060,7 +4061,14 @@ static ElfW(Addr) __linker_init_post_relocation(KernelArgumentBlock& args, ElfW(
// Initialize system properties
__system_properties_init(); // may use 'environ'
- debuggerd_init();
+ // Register the debuggerd signal handler.
+ debuggerd_callbacks_t callbacks = {
+ .get_abort_message = []() {
+ return g_abort_message;
+ },
+ .post_dump = &notify_gdb_of_libraries,
+ };
+ debuggerd_init(&callbacks);
// Get a few environment variables.
const char* LD_DEBUG = getenv("LD_DEBUG");