am f0ddaa2f: am 7d2e24eb: bionic: introduce libc.debug.malloc.program

* commit 'f0ddaa2fac00ac20059c0b2c142da9de2838a7b6':
  bionic: introduce libc.debug.malloc.program
diff --git a/libc/bionic/malloc_debug_common.c b/libc/bionic/malloc_debug_common.c
index b9fcbc4..6837e39 100644
--- a/libc/bionic/malloc_debug_common.c
+++ b/libc/bionic/malloc_debug_common.c
@@ -298,6 +298,7 @@
     unsigned int memcheck_enabled = 0;
     char env[PROP_VALUE_MAX];
     char memcheck_tracing[PROP_VALUE_MAX];
+    char debug_program[PROP_VALUE_MAX];
 
     /* Get custom malloc debug level. Note that emulator started with
      * memory checking option will have priority over debug level set in
@@ -325,6 +326,15 @@
         return;
     }
 
+    /* If libc.debug.malloc.program is set and is not a substring of progname,
+     * then exit.
+     */
+    if (__system_property_get("libc.debug.malloc.program", debug_program)) {
+        if (!strstr(__progname, debug_program)) {
+            return;
+        }
+    }
+
     // Lets see which .so must be loaded for the requested debug level
     switch (debug_level) {
         case 1: