1
0
mirror of https://github.com/amir20/dozzle.git synced 2026-01-02 19:17:37 +01:00

Fixes messages possible deadlock

This commit is contained in:
Amir Raminfar
2018-12-05 06:57:37 -08:00
parent 00615f5ffa
commit 952c38e7b3

View File

@@ -84,12 +84,12 @@ func (d *dockerClient) ContainerLogs(ctx context.Context, id string) (<-chan str
return nil, errChannel
}
messages := make(chan string)
go func() {
<-ctx.Done()
reader.Close()
}()
messages := make(chan string)
go func() {
defer close(messages)
defer close(errChannel)
@@ -109,7 +109,10 @@ func (d *dockerClient) ContainerLogs(ctx context.Context, id string) (<-chan str
errChannel <- err
break
}
messages <- buffer.String()
select {
case messages <- buffer.String():
case <-ctx.Done():
}
buffer.Reset()
}
}()