Fix error reporting in MatchesIncludeTags am: 894b318528

Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3008164

Change-Id: Ia6651b41dafc23e346c339f6b732731d993a4a4c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Cole Faust 2024-03-22 18:21:14 +00:00 committed by Automerger Merge Worker
commit aa076d4e77

View file

@ -1068,8 +1068,12 @@ func shouldVisitFile(c *Context, file *parser.File) shouldVisitFileInfo {
} }
if blueprintPackageIncludes != nil { if blueprintPackageIncludes != nil {
packageMatches := blueprintPackageIncludes.MatchesIncludeTags(c) packageMatches, err := blueprintPackageIncludes.matchesIncludeTags(c)
if !packageMatches { if err != nil {
return shouldVisitFileInfo{
errs: []error{err},
}
} else if !packageMatches {
return shouldVisitFileInfo{ return shouldVisitFileInfo{
shouldVisitFile: false, shouldVisitFile: false,
skippedModules: skippedModules, skippedModules: skippedModules,
@ -5265,14 +5269,14 @@ func (pi *PackageIncludes) MatchAll() []string {
} }
// Returns true if all requested include tags are set in the Context object // Returns true if all requested include tags are set in the Context object
func (pi *PackageIncludes) MatchesIncludeTags(ctx *Context) bool { func (pi *PackageIncludes) matchesIncludeTags(ctx *Context) (bool, error) {
if len(pi.MatchAll()) == 0 { if len(pi.MatchAll()) == 0 {
ctx.ModuleErrorf(pi, "Match_all must be a non-empty list") return false, ctx.ModuleErrorf(pi, "Match_all must be a non-empty list")
} }
for _, includeTag := range pi.MatchAll() { for _, includeTag := range pi.MatchAll() {
if !ctx.ContainsIncludeTag(includeTag) { if !ctx.ContainsIncludeTag(includeTag) {
return false return false, nil
} }
} }
return true return true, nil
} }