Merge "Fix exclusion overriding local integer_overflow."
am: b549e826dd
Change-Id: I42dd978a5393d903be7fda66d64a4e39387e0b17
diff --git a/core/config_sanitizers.mk b/core/config_sanitizers.mk
index 0d182e9..8304b83 100644
--- a/core/config_sanitizers.mk
+++ b/core/config_sanitizers.mk
@@ -22,6 +22,18 @@
endif
endif
+# Disable global integer_overflow in excluded paths.
+ifneq ($(filter integer_overflow, $(my_global_sanitize)),)
+ combined_exclude_paths := $(INTEGER_OVERFLOW_EXCLUDE_PATHS) \
+ $(PRODUCT_INTEGER_OVERFLOW_EXCLUDE_PATHS)
+
+ ifneq ($(strip $(foreach dir,$(subst $(comma),$(space),$(combined_exclude_paths)),\
+ $(filter $(dir)%,$(LOCAL_PATH)))),)
+ my_global_sanitize := $(filter-out integer_overflow,$(my_global_sanitize))
+ my_global_sanitize_diag := $(filter-out integer_overflow,$(my_global_sanitize_diag))
+ endif
+endif
+
ifneq ($(my_global_sanitize),)
my_sanitize := $(my_global_sanitize) $(my_sanitize)
endif
@@ -103,17 +115,8 @@
endif
endif
+# Disable integer_overflow if LOCAL_NOSANITIZE=integer.
ifneq ($(filter integer_overflow, $(my_global_sanitize) $(my_sanitize)),)
- # Disable integer_overflow in excluded paths.
- combined_exclude_paths := $(INTEGER_OVERFLOW_EXCLUDE_PATHS) \
- $(PRODUCT_INTEGER_OVERFLOW_EXCLUDE_PATHS)
-
- ifneq ($(strip $(foreach dir,$(subst $(comma),$(space),$(combined_exclude_paths)),\
- $(filter $(dir)%,$(LOCAL_PATH)))),)
- my_sanitize := $(filter-out integer_overflow,$(my_sanitize))
- my_sanitize_diag := $(filter-out integer_overflow,$(my_sanitize_diag))
- endif
- # Disable integer_overflow if LOCAL_NOSANITIZE=integer.
ifneq ($(filter integer, $(strip $(LOCAL_NOSANITIZE))),)
my_sanitize := $(filter-out integer_overflow,$(my_sanitize))
my_sanitize_diag := $(filter-out integer_overflow,$(my_sanitize_diag))