Merge "Pass the parameters to goroutine to avoid relying on a go 1.22 fix." into main

This commit is contained in:
Yu Liu 2024-05-24 18:05:25 +00:00 committed by Gerrit Code Review
commit da55eb2a45

View file

@ -4514,7 +4514,7 @@ func (c *Context) writeAllModuleActions(nw *ninjaWriter, shardNinja bool, ninjaF
shardedModules := proptools.ShardByCount(modules, len(fileNames))
ninjaShardCnt := len(shardedModules)
for i, batchModules := range shardedModules {
go func() {
go func(i int, batchModules []*moduleInfo) {
f, err := os.OpenFile(filepath.Join(c.SrcDir(), fileNames[i]), os.O_WRONLY|os.O_CREATE|os.O_TRUNC, OutFilePermissions)
if err != nil {
errorCh <- fmt.Errorf("error opening Ninja file: %s", err)
@ -4525,7 +4525,7 @@ func (c *Context) writeAllModuleActions(nw *ninjaWriter, shardNinja bool, ninjaF
defer buf.Flush()
writer := newNinjaWriter(buf)
errorCh <- c.writeModuleAction(batchModules, writer, headerTemplate)
}()
}(i, batchModules)
nw.Subninja(fileNames[i])
}