From bc17fbd6f74601d55029f0396d1c91393e5a6ea9 Mon Sep 17 00:00:00 2001 From: Victor Vieux Date: Wed, 11 Mar 2015 14:27:00 -0700 Subject: [PATCH] better error Signed-off-by: Victor Vieux --- api/api.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/api/api.go b/api/api.go index 4ab10622f0..e35d85a133 100644 --- a/api/api.go +++ b/api/api.go @@ -345,24 +345,25 @@ func deleteImages(c *context, w http.ResponseWriter, r *http.Request) { } } - size := len(matchedImages) - if size == 0 { + if len(matchedImages) == 0 { httpError(w, fmt.Sprintf("No such image %s", name), http.StatusNotFound) return } out := []*dockerclient.ImageDelete{} + errs := []string{} for _, image := range matchedImages { content, err := image.Node.DockerClient().RemoveImage(name) if err != nil { - out = nil - httpError(w, err.Error(), http.StatusInternalServerError) + errs = append(errs, fmt.Sprintf("%s: %s", image.Node.Name(), err.Error())) continue } out = append(out, content...) } - if out != nil { + if len(errs) != 0 { + httpError(w, strings.Join(errs, ""), http.StatusInternalServerError) + } else { w.Header().Set("Content-Type", "application/json") json.NewEncoder(NewWriteFlusher(w)).Encode(out) }