diff options
author | Alessandra Loro <aloro@google.com> | 2022-11-21 14:35:40 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2022-11-21 14:35:40 +0000 |
commit | 36ce32f54d9eb7b24882a95ee7c9fc96f15e1e59 (patch) | |
tree | d7f1b5bb11cd1910221cf910d0023c1a9c718789 | |
parent | 9f99f0ed0f0406e16cdf6784ded4544383cf99ca (diff) | |
parent | 46b33019ef3a93e1d0b9095d1a3a7bf1f0bb9396 (diff) |
Merge "Resolve ro.debuggable at build time" into tm-qpr-dev
-rw-r--r-- | debuggerd/Android.bp | 6 | ||||
-rw-r--r-- | debuggerd/include/debuggerd/handler.h | 7 |
2 files changed, 10 insertions, 3 deletions
diff --git a/debuggerd/Android.bp b/debuggerd/Android.bp index ad0231d8d..51988727d 100644 --- a/debuggerd/Android.bp +++ b/debuggerd/Android.bp @@ -14,9 +14,15 @@ cc_defaults { "-Wno-nullability-completeness", "-Os", "-fno-finite-loops", + "-DANDROID_DEBUGGABLE=0", ], local_include_dirs: ["include"], + product_variables: { + debuggable: { + cflags: ["-UANDROID_DEBUGGABLE", "-DANDROID_DEBUGGABLE=1"], + } + }, } cc_library_headers { diff --git a/debuggerd/include/debuggerd/handler.h b/debuggerd/include/debuggerd/handler.h index bc08327a1..68b2e678b 100644 --- a/debuggerd/include/debuggerd/handler.h +++ b/debuggerd/include/debuggerd/handler.h @@ -62,10 +62,11 @@ void debuggerd_init(debuggerd_callbacks_t* callbacks); #define DEBUGGER_SIGNAL BIONIC_SIGNAL_DEBUGGER static void __attribute__((__unused__)) debuggerd_register_handlers(struct sigaction* action) { + bool enabled = true; +#if ANDROID_DEBUGGABLE char value[PROP_VALUE_MAX] = ""; - bool enabled = - !(__system_property_get("ro.debuggable", value) > 0 && !strcmp(value, "1") && - __system_property_get("debug.debuggerd.disable", value) > 0 && !strcmp(value, "1")); + enabled = !(__system_property_get("debug.debuggerd.disable", value) > 0 && !strcmp(value, "1")); +#endif if (enabled) { sigaction(SIGABRT, action, nullptr); sigaction(SIGBUS, action, nullptr); |