multi: don't access loop variables in goroutines
This commit makes sure that no loop variables or other temporary variables are accessed directly in a goroutine but are instead passed into the goroutine through a parameter. This makes sure a copy of the value is put on the stack and is not changed while the outside loop continues.
This commit is contained in:
7 files changed
+33
-21
No files matched your search
@@ -347,7 +347,9 @@ out:
|
||||
//
|
||||
// TODO(wilmer): add retry logic if rescan fails?
|
||||
b.wg.Add(1)
|
||||
go func() {
|
||||
|
||||
//nolint:lll
|
||||
go func(msg *chainntnfs.HistoricalConfDispatch) {
|
||||
defer b.wg.Done()
|
||||
|
||||
confDetails, _, err := b.historicalConfDetails(
|
||||
@@ -372,7 +374,7 @@ out:
|
||||
if err != nil {
|
||||
chainntnfs.Log.Error(err)
|
||||
}
|
||||
}()
|
||||
}(msg)
|
||||
|
||||
case *blockEpochRegistration:
|
||||
chainntnfs.Log.Infof("New block epoch subscription")
|
||||
|
||||
Reference in new issue
Block a user