Sfoglia il codice sorgente

Check for non-nil container after match

There can be a race between getting the container ids for matches and
getting the actual container.  This makes sure that we check that the
container returned by `Get` is non-nil before adding it to the list of
matches.

Fixes #25991

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
Michael Crosby 8 anni fa
parent
commit
a020ec4c8b
1 ha cambiato i file con 3 aggiunte e 1 eliminazioni
  1. 3 1
      daemon/list.go

+ 3 - 1
daemon/list.go

@@ -147,7 +147,9 @@ func (daemon *Daemon) filterByNameIDMatches(ctx *listContext) []*container.Conta
 
 	cntrs := make([]*container.Container, 0, len(matches))
 	for id := range matches {
-		cntrs = append(cntrs, daemon.containers.Get(id))
+		if c := daemon.containers.Get(id); c != nil {
+			cntrs = append(cntrs, c)
+		}
 	}
 
 	// Restore sort-order after filtering