Fix the flaky build breakage for droiddoc target.

ExpandSourcesSubDir was calling SourceFileProducer.Srcs(), and then
doing:
moduleSrcs = append(moduleSrcs[:j], moduleSrcs[j+1:]...)
This modifies the backing store of the slice, which may affect the
original data stored in the SourceFileProducer.  Make all Srcs
implementations return slice that points to a copy of the backing
array.

Test: m out/target/common/obj/PACKAGING/checkpublicapi-current-timestamp
Bug: b/76179848 b/76397326
Change-Id: I2432ce196984814daafc5aa9a2746e81de74494c
This commit is contained in:
Nan Zhang
2018-03-27 16:19:42 -07:00
committed by Colin Cross
parent 215cedde6a
commit e42777a05a
3 changed files with 3 additions and 3 deletions

View File

@@ -183,7 +183,7 @@ type CompiledInterface interface {
}
func (compiler *baseCompiler) Srcs() android.Paths {
return compiler.srcs
return append(android.Paths{}, compiler.srcs...)
}
func (compiler *baseCompiler) appendCflags(flags []string) {

View File

@@ -70,7 +70,7 @@ func (fg *fileGroup) GenerateAndroidBuildActions(ctx android.ModuleContext) {
}
func (fg *fileGroup) Srcs() android.Paths {
return fg.srcs
return append(android.Paths{}, fg.srcs...)
}
var androidMkTemplate = template.Must(template.New("filegroup").Parse(`

View File

@@ -125,7 +125,7 @@ func (g *Module) GeneratedSourceFiles() android.Paths {
}
func (g *Module) Srcs() android.Paths {
return g.outputFiles
return append(android.Paths{}, g.outputFiles...)
}
func (g *Module) GeneratedHeaderDirs() android.Paths {