Merge branch 'master' from github.com/daftano. No issue #
[arvados.git] / sdk / go / keepclient / keepclient.go
index 23af470f78efc8137d0913cc4ccf611138ae0daf..0869d3d047a1315b145fae5472cccb499a13f9cf 100644 (file)
@@ -50,7 +50,7 @@ func MakeKeepClient(arv *arvadosclient.ArvadosClient) (kc KeepClient, err error)
                Using_proxy:   false,
                Client:        &http.Client{},
        }
-       err = (&kc).DiscoverKeepServers()
+       _, err = (&kc).DiscoverKeepServers()
 
        return kc, err
 }
@@ -159,10 +159,17 @@ func (this KeepClient) AuthorizedGet(hash string,
 
                var resp *http.Response
                if resp, err = this.Client.Do(req); err != nil || resp.StatusCode != http.StatusOK {
-                       respbody, _ := ioutil.ReadAll(&io.LimitedReader{resp.Body, 4096})
+                       statusCode := -1
+                       var respbody []byte
+                       if resp != nil {
+                               statusCode = resp.StatusCode
+                               if resp.Body != nil {
+                                       respbody, _ = ioutil.ReadAll(&io.LimitedReader{resp.Body, 4096})
+                               }
+                       }
                        response := strings.TrimSpace(string(respbody))
                        log.Printf("[%v] Download %v status code: %v error: \"%v\" response: \"%v\"",
-                               requestId, url, resp.StatusCode, err, response)
+                               requestId, url, statusCode, err, response)
                        continue
                }