diff --git a/clients/go/camput/camput.go b/clients/go/camput/camput.go index ab838cb26..fe3dabb70 100644 --- a/clients/go/camput/camput.go +++ b/clients/go/camput/camput.go @@ -70,6 +70,13 @@ func (up *Uploader) UploadFileBlob(filename string) (*client.PutResult, os.Error if *flagVerbose { log.Printf("Uploading filename: %s", filename) } + fi, err := os.Stat(filename) + if err != nil { + return nil, err + } + if !fi.IsRegular() { + return nil, fmt.Errorf("%q is not a regular file", filename) + } file, err := os.Open(filename) if err != nil { return nil, err diff --git a/lib/go/camli/client/upload.go b/lib/go/camli/client/upload.go index 02847b9a1..fc179f62b 100644 --- a/lib/go/camli/client/upload.go +++ b/lib/go/camli/client/upload.go @@ -250,9 +250,7 @@ func (c *Client) Upload(h *UploadHandle) (*PutResult, os.Error) { if err != nil { return errorf("stat http error: %v", err) } - if resp.Body != nil { - defer resp.Body.Close() - } + defer resp.Body.Close() if resp.StatusCode != 200 { return errorf("stat response had http status %d", resp.StatusCode)