1
0
mirror of https://github.com/rclone/rclone.git synced 2026-01-06 02:23:24 +00:00

yandex: Fix socket leaks

This commit is contained in:
Nick Craig-Wood
2015-12-30 13:30:57 +00:00
parent 82b85431bd
commit 9ade179407
7 changed files with 14 additions and 13 deletions

View File

@@ -41,20 +41,20 @@ func ProccessErrorResponse(data io.Reader) (*ErrorResponse, error) {
}
// CheckAPIError is a convenient function to turn erroneous
// API response into go error.
func CheckAPIError(resp *http.Response) error {
// API response into go error. It closes the Body on error.
func CheckAPIError(resp *http.Response) (err error) {
if resp.StatusCode >= 200 && resp.StatusCode < 400 {
return nil
}
defer CheckClose(resp.Body, &err)
errorResponse, err := ProccessErrorResponse(resp.Body)
if err != nil {
return err
}
errorResponse.StatusCode = resp.StatusCode
defer CheckClose(resp.Body, &err)
return errorResponse
}