From 76723b12883097568ff6a1e34a857195999023fc Mon Sep 17 00:00:00 2001 From: guangwu Date: Tue, 9 Apr 2024 19:12:04 +0800 Subject: [PATCH] Close created file in ACME local store CheckFile func --- pkg/provider/acme/local_store_unix.go | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/pkg/provider/acme/local_store_unix.go b/pkg/provider/acme/local_store_unix.go index f6d590536..163ecd7ae 100644 --- a/pkg/provider/acme/local_store_unix.go +++ b/pkg/provider/acme/local_store_unix.go @@ -11,14 +11,15 @@ import ( // CheckFile checks file permissions and content size. func CheckFile(name string) (bool, error) { f, err := os.Open(name) - if err != nil { - if os.IsNotExist(err) { - f, err = os.Create(name) - if err != nil { - return false, err - } - return false, f.Chmod(0o600) + if err != nil && os.IsNotExist(err) { + nf, err := os.Create(name) + if err != nil { + return false, err } + defer nf.Close() + return false, nf.Chmod(0o600) + } + if err != nil { return false, err } defer f.Close()