From 3c2bc8074c5066e332d2e0baab59058205664410 Mon Sep 17 00:00:00 2001 From: Koji Nakamaru Date: Wed, 17 Jun 2020 06:40:10 +0900 Subject: [PATCH] fixed GetFileContents() to surely return a non-nil error on Fail. (#138) --- gdrive/gdrive.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/gdrive/gdrive.go b/gdrive/gdrive.go index 15ca655..9b55c3d 100644 --- a/gdrive/gdrive.go +++ b/gdrive/gdrive.go @@ -1015,7 +1015,16 @@ func (gd *GDrive) GetFileContents(f *File) (io.ReadCloser, error) { // Rate-limit the download, if required. return makeLimitedDownloadReader(resp.Body), nil case Fail: - return nil, err + if resp != nil && resp.Body != nil { + defer resp.Body.Close() + } + if err != nil { + return nil, err + } else if resp != nil { + return nil, fmt.Errorf("%s", resp.Status) + } else { + return nil, fmt.Errorf("unknown error") + } case Retry: } }