mirror of
https://github.com/docker/cli.git
synced 2026-01-15 07:40:57 +03:00
Fix #31350 As we can see in `daemon.Images()`, there is a gap between `allImages = daemon.imageStore.Map()` and `l, err := daemon.layerStore.Get(layerID)`, so images which still exist when we hit `allImages = daemon.imageStore.Map()` may have already been deleted when we hit `l, err := daemon.layerStore.Get(layerID)`. ``` if danglingOnly { allImages = daemon.imageStore.Heads() } else { allImages = daemon.imageStore.Map() } ... for id, img := range allImages { ... layerID := img.RootFS.ChainID() var size int64 if layerID != "" { l, err := daemon.layerStore.Get(layerID) if err != nil { return nil, err } ``` Signed-off-by: Yuanhong Peng <pengyuanhong@huawei.com> Upstream-commit: 2b9694c29e3bbbce23f0c4009f908a23c115c598 Component: engine