From 6b4563c7c916ad014e6bbcfd346ccdb5d63fc4a2 Mon Sep 17 00:00:00 2001 From: Lukas SP Date: Wed, 2 Sep 2020 19:13:49 +0200 Subject: [PATCH] Implement S3 missing object error handling --- .gitignore | 3 ++- internal/storage/s3_driver.go | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index bd326a0..776188e 100644 --- a/.gitignore +++ b/.gitignore @@ -115,4 +115,5 @@ modules.xml # End of https://www.toptal.com/developers/gitignore/api/jetbrains+all,go web/*.gz -data/ \ No newline at end of file +data/ +.env \ No newline at end of file diff --git a/internal/storage/s3_driver.go b/internal/storage/s3_driver.go index 67bb957..80143a9 100644 --- a/internal/storage/s3_driver.go +++ b/internal/storage/s3_driver.go @@ -63,11 +63,11 @@ func (driver *S3Driver) Get(id string) (*pastes.Paste, error) { if err != nil { return nil, err } - if object == nil { - return nil, nil - } data, err := ioutil.ReadAll(object) if err != nil { + if minio.ToErrorResponse(err).Code == "NoSuchKey" { + return nil, nil + } return nil, err }