Merge pull request #1335 from wking/wont-never
oci: Copy-edits for waitContainerStop chControl comment
This commit is contained in:
commit
be23a54da4
1 changed files with 6 additions and 6 deletions
12
oci/oci.go
12
oci/oci.go
|
@ -563,12 +563,12 @@ func (r *Runtime) UpdateContainer(c *Container, res *rspec.LinuxResources) error
|
||||||
|
|
||||||
func waitContainerStop(ctx context.Context, c *Container, timeout time.Duration) error {
|
func waitContainerStop(ctx context.Context, c *Container, timeout time.Duration) error {
|
||||||
done := make(chan struct{})
|
done := make(chan struct{})
|
||||||
// we could potentially re-use "done" channel to exit the loop on timeout
|
// we could potentially re-use "done" channel to exit the loop on timeout,
|
||||||
// but we use another channel "chControl" so that we won't never incur in the
|
// but we use another channel "chControl" so that we never panic
|
||||||
// case the "done" channel is closed in the "default" select case and we also
|
// attempting to close an already-closed "done" channel. The panic
|
||||||
// reach the timeout in the select below. If that happens we could raise
|
// would occur in the "default" select case below if we'd closed the
|
||||||
// a panic closing a closed channel so better be safe and use another new
|
// "done" channel (instead of the "chControl" channel) in the timeout
|
||||||
// channel just to control the loop.
|
// select case.
|
||||||
chControl := make(chan struct{})
|
chControl := make(chan struct{})
|
||||||
go func() {
|
go func() {
|
||||||
for {
|
for {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue