diff --git a/compiler-rt/lib/hwasan/hwasan.cpp b/compiler-rt/lib/hwasan/hwasan.cpp index 100ba39a7a29ab1b13038c5ec46ea2a8f751ebea..db096a013ad7434e924844d7167a96b19a8e48ab 100644 --- a/compiler-rt/lib/hwasan/hwasan.cpp +++ b/compiler-rt/lib/hwasan/hwasan.cpp @@ -425,9 +425,18 @@ __attribute__((constructor(0))) void __hwasan_init() { // OHOS_LOCAL begin if (flags()->memory_debug) { - flags()->max_malloc_fill_size = 256; - flags()->max_free_fill_size = 256; - flags()->heap_quarantine_max = 1024 + 1; + if (flags()->max_malloc_fill_size <= 0 || + flags()->max_malloc_fill_size > 1024) { + flags()->max_malloc_fill_size = 256; + } + if (flags()->max_free_fill_size <= 0 || + flags()->max_free_fill_size > 1024) { + flags()->max_free_fill_size = 256; + } + if (flags()->heap_quarantine_max <= 0 || + flags()->heap_quarantine_max > 65537) { + flags()->heap_quarantine_max = 1024 + 1; + } } // OHOS_LOCAL end