فهرست منبع

pkg/fileutil: clarify flock errors

Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
Gyuho Lee 7 سال پیش
والد
کامیت
2bb1a268b3
1فایلهای تغییر یافته به همراه4 افزوده شده و 4 حذف شده
  1. 4 4
      pkg/fileutil/lock_linux.go

+ 4 - 4
pkg/fileutil/lock_linux.go

@@ -17,6 +17,7 @@
 package fileutil
 
 import (
+	"fmt"
 	"io"
 	"os"
 	"syscall"
@@ -62,7 +63,7 @@ func TryLockFile(path string, flag int, perm os.FileMode) (*LockedFile, error) {
 func ofdTryLockFile(path string, flag int, perm os.FileMode) (*LockedFile, error) {
 	f, err := os.OpenFile(path, flag, perm)
 	if err != nil {
-		return nil, err
+		return nil, fmt.Errorf("ofdTryLockFile failed to open %q (%v)", path, err)
 	}
 
 	flock := wrlck
@@ -83,15 +84,14 @@ func LockFile(path string, flag int, perm os.FileMode) (*LockedFile, error) {
 func ofdLockFile(path string, flag int, perm os.FileMode) (*LockedFile, error) {
 	f, err := os.OpenFile(path, flag, perm)
 	if err != nil {
-		return nil, err
+		return nil, fmt.Errorf("ofdLockFile failed to open %q (%v)", path, err)
 	}
 
 	flock := wrlck
 	err = syscall.FcntlFlock(f.Fd(), F_OFD_SETLKW, &flock)
-
 	if err != nil {
 		f.Close()
 		return nil, err
 	}
-	return &LockedFile{f}, err
+	return &LockedFile{f}, nil
 }