Don't use APEX prebuilts when asan is on

Some prebuilt APEXes are enabled with scudo, which causes crash on
devices with asan.

Bug: 137216042
Test: build walleye_hwasan and check if apexes are not from prebuilts
Change-Id: Ic436ad06e724af952d99fb8e66358a595450eb84
This commit is contained in:
Jiyong Park
2019-07-11 11:24:41 +09:00
parent 0a573d798f
commit 3b98a509f1

View File

@@ -1327,10 +1327,16 @@ func (p *Prebuilt) installable() bool {
}
func (p *Prebuilt) DepsMutator(ctx android.BottomUpMutatorContext) {
if ctx.Config().FlattenApex() && !ctx.Config().UnbundledBuild() && p.prebuilt.SourceExists() {
// If the device is configured to use flattened APEX, don't set
// p.properties.Source so that the prebuilt module (which is
// a non-flattened APEX) is not used.
// If the device is configured to use flattened APEX, don't set
// p.properties.Source so that the prebuilt module (which is
// a non-flattened APEX) is not used.
forceDisable := ctx.Config().FlattenApex() && !ctx.Config().UnbundledBuild()
// b/137216042 don't use prebuilts when address sanitizer is on
forceDisable = forceDisable || android.InList("address", ctx.Config().SanitizeDevice()) ||
android.InList("hwaddress", ctx.Config().SanitizeDevice())
if forceDisable && p.prebuilt.SourceExists() {
p.properties.ForceDisable = true
return
}