X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=dep.go;h=38d8bb79c200ede2acedeb9ce357fe313211d7c2;hb=7af5de2df47e5291ae10dbaf3cfc9c126c711840;hp=a362a3840b5ded3a4b141bd85a8451bc0a624f7e;hpb=68c7d1136890bf7b70e78e3612d79965c261b68f;p=goredo.git diff --git a/dep.go b/dep.go index a362a38..38d8bb7 100644 --- a/dep.go +++ b/dep.go @@ -28,10 +28,10 @@ import ( "os" "path" "strings" - "syscall" "go.cypherpunks.ru/recfile" "golang.org/x/crypto/blake2b" + "golang.org/x/sys/unix" ) func recfileWrite(fdDep *os.File, fields ...recfile.Field) error { @@ -74,12 +74,11 @@ func stamp(fdDep, src *os.File) error { } func fileCtime(fd *os.File) (string, error) { - fi, err := fd.Stat() - if err != nil { + var stat unix.Stat_t + if err := unix.Fstat(int(fd.Fd()), &stat); err != nil { return "", err } - stat := fi.Sys().(*syscall.Stat_t) - sec, nsec := stat.Ctimespec.Unix() + sec, nsec := stat.Ctim.Unix() return fmt.Sprintf("%d.%d", sec, nsec), nil }