[bugfix] Fix incorrect per-loop variable capture (#2092)

These should be per iteration, not per loop. This was caught by running
a build with the loopvar experiment: go build -gcflags=-d=loopvar=2.
This commit is contained in:
Daenney 2023-08-09 18:40:32 +02:00 committed by GitHub
parent 31a215849e
commit dbf487effb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 2 additions and 0 deletions

View File

@ -429,6 +429,7 @@ func (l *listDB) PutListEntries(ctx context.Context, entries []*gtsmodel.ListEnt
// Finally, insert each list entry into the database. // Finally, insert each list entry into the database.
return l.db.RunInTx(ctx, func(tx bun.Tx) error { return l.db.RunInTx(ctx, func(tx bun.Tx) error {
for _, entry := range entries { for _, entry := range entries {
entry := entry // rescope
if err := l.state.Caches.GTS.ListEntry().Store(entry, func() error { if err := l.state.Caches.GTS.ListEntry().Store(entry, func() error {
_, err := tx. _, err := tx.
NewInsert(). NewInsert().

View File

@ -119,6 +119,7 @@ func (m *manager) Start() error {
// hasn't been accessed in the last hour. // hasn't been accessed in the last hour.
go func() { go func() {
for now := range time.NewTicker(1 * time.Hour).C { for now := range time.NewTicker(1 * time.Hour).C {
now := now // rescope
// Define the range function inside here, // Define the range function inside here,
// so that we can use the 'now' returned // so that we can use the 'now' returned
// by the ticker, instead of having to call // by the ticker, instead of having to call