Fixed missing Body.Close when doing some HTTP requests. It should improve some request issues.

This commit is contained in:
Sam Alba 2013-06-03 12:14:57 -07:00
Родитель a8ae398bf5
Коммит 830c458fe7
2 изменённых файлов: 7 добавлений и 1 удалений

Просмотреть файл

@ -64,6 +64,9 @@ func (r *Registry) LookupRemoteImage(imgId, registry string, authConfig *auth.Au
}
req.SetBasicAuth(authConfig.Username, authConfig.Password)
res, err := rt.RoundTrip(req)
if err == nil {
defer res.Body.Close()
}
return err == nil && res.StatusCode == 307
}
@ -152,7 +155,9 @@ func (r *Registry) GetRemoteTags(registries []string, repository string, token [
}
req.Header.Set("Authorization", "Token "+strings.Join(token, ", "))
res, err := r.client.Do(req)
defer res.Body.Close()
if err == nil {
defer res.Body.Close()
}
utils.Debugf("Got status code %d from %s", res.StatusCode, endpoint)
if err != nil || (res.StatusCode != 200 && res.StatusCode != 404) {
continue

Просмотреть файл

@ -321,6 +321,7 @@ func (srv *Server) pullImage(r *registry.Registry, out io.Writer, imgId, endpoin
if err != nil {
return err
}
defer layer.Close()
if err := srv.runtime.graph.Register(utils.ProgressReader(layer, contentLength, out, sf.FormatProgress("Downloading", "%v/%v (%v)"), sf), false, img); err != nil {
return err
}