aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Majewsky <majewsky@gmx.net>2018-03-08 21:52:37 +0100
committerStefan Majewsky <majewsky@gmx.net>2018-03-08 21:52:37 +0100
commit640d395b63f3ee88a71b529dc2a2182c7a0fe5fe (patch)
treeb97bb0938a32f2d6e619e1b182e7ec7f78f1078f
parentf5e33c280f225b04652b6898d586c5d9ec60052e (diff)
downloadgo-schwift-640d395b63f3ee88a71b529dc2a2182c7a0fe5fe.tar.gz
fix a panic in the error case of Object.Download()
-rw-r--r--object.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/object.go b/object.go
index b4bf41e..b8f5365 100644
--- a/object.go
+++ b/object.go
@@ -320,14 +320,16 @@ func (o *Object) Download(headers ObjectHeaders, opts *RequestOptions) Downloade
Options: opts,
ExpectStatusCodes: []int{200},
}.Do(o.c.a.backend)
+ var body io.ReadCloser
if err == nil {
newHeaders := ObjectHeaders(headersFromHTTP(resp.Header))
err = newHeaders.Validate()
if err == nil {
o.headers = &newHeaders
}
+ body = resp.Body
}
- return DownloadedObject{resp.Body, err}
+ return DownloadedObject{body, err}
}
//CopyTo copies the object on the server side using a COPY request. To copy