Fix a deadlock in TaskLoop

This commit is contained in:
Joe Turki
2025-11-26 20:11:09 +02:00
parent 30c406b788
commit 4537cf7b6c
2 changed files with 62 additions and 0 deletions

View File

@@ -85,6 +85,8 @@ func (l *Loop) Run(ctx context.Context, t func(context.Context)) error {
select {
case <-ctx.Done():
return ctx.Err()
case <-l.done:
return ErrClosed
case l.tasks <- task{t, done}:
<-done