diff --git a/image_recover_tool/image-check/image/image.go b/image_recover_tool/image-check/image/image.go index fdabac43656867516039e9a6d5f55fd085e8fc8b..262f77822cdb17685d427cac73088475115bf126 100644 --- a/image_recover_tool/image-check/image/image.go +++ b/image_recover_tool/image-check/image/image.go @@ -56,7 +56,7 @@ func (is *store) getImageFullId(id string) (string, error) { } else if len(imageFullId) == 0 { return "", fmt.Errorf("No such object: %s", id) } else { - return "", fmt.Errorf("Multiple IDs found with provided prefix: %v", imageFullId[1]) + return "", fmt.Errorf("Multiple IDs found with provided prefix: %s", id) } } diff --git a/image_recover_tool/image-check/layer/check_overlay2.go b/image_recover_tool/image-check/layer/check_overlay2.go index 521c6cc38a92ef2ce2c4ae6ad382e32e9629c0f9..511bc7c7e8c9363456082e507dc5d11335fddae0 100644 --- a/image_recover_tool/image-check/layer/check_overlay2.go +++ b/image_recover_tool/image-check/layer/check_overlay2.go @@ -145,11 +145,17 @@ func (d *Driver) GetContainerParent(id string) (string, error) { if err == nil { // 找到容器所依赖镜像层的cacheID low := strings.Split(string(lowers), ":") + if len(low) < 2 { + return "", fmt.Errorf("CacheID: %s, unexpected target length: %v < 2", id, len(low)) + } parent, err := os.Readlink(path.Join(d.home, string(low[1]))) if err != nil { return "", err } parentCacheID := strings.Split(string(parent), "/") + if len(parentCacheID) != 3 { + return "", fmt.Errorf("CacheID: %s, unexpected target length: %v != 3", id, len(parentCacheID)) + } return parentCacheID[1], nil } else { return "", err