]> Cypherpunks repositories - gostls13.git/commitdiff
os: use syscall.Timespec.Unix
authorIan Lance Taylor <iant@golang.org>
Tue, 28 Dec 2021 18:54:55 +0000 (10:54 -0800)
committerIan Lance Taylor <iant@golang.org>
Mon, 28 Mar 2022 04:41:26 +0000 (04:41 +0000)
Use the syscall method instead of repeating the type conversions for each OS.

Change-Id: I1db975b3aaa189cf724d7b1b7c5c41bc64dd964d
Reviewed-on: https://go-review.googlesource.com/c/go/+/374574
Trust: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Emmanuel Odeke <emmanuel@orijtech.com>
Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com>
src/os/stat_darwin.go
src/os/stat_dragonfly.go
src/os/stat_freebsd.go
src/os/stat_js.go
src/os/stat_linux.go
src/os/stat_netbsd.go
src/os/stat_openbsd.go
src/os/stat_solaris.go

index 74214cefa446ea43a99bb3a99c482dceeb66e81c..b92ffd4a0a6ff4a0b51e048832da7a7d998579f4 100644 (file)
@@ -12,7 +12,7 @@ import (
 func fillFileStatFromSys(fs *fileStat, name string) {
        fs.name = basename(name)
        fs.size = fs.sys.Size
-       fs.modTime = timespecToTime(fs.sys.Mtimespec)
+       fs.modTime = time.Unix(fs.sys.Mtimespec.Unix())
        fs.mode = FileMode(fs.sys.Mode & 0777)
        switch fs.sys.Mode & syscall.S_IFMT {
        case syscall.S_IFBLK, syscall.S_IFWHT:
@@ -41,11 +41,7 @@ func fillFileStatFromSys(fs *fileStat, name string) {
        }
 }
 
-func timespecToTime(ts syscall.Timespec) time.Time {
-       return time.Unix(int64(ts.Sec), int64(ts.Nsec))
-}
-
 // For testing.
 func atime(fi FileInfo) time.Time {
-       return timespecToTime(fi.Sys().(*syscall.Stat_t).Atimespec)
+       return time.Unix(fi.Sys().(*syscall.Stat_t).Atimespec.Unix())
 }
index 217bc6726d22ccfaf900efb4ae527c478d3c0ff8..316c26c7cab7af1e10ed3be1ace47d51d01c2b9e 100644 (file)
@@ -12,7 +12,7 @@ import (
 func fillFileStatFromSys(fs *fileStat, name string) {
        fs.name = basename(name)
        fs.size = fs.sys.Size
-       fs.modTime = timespecToTime(fs.sys.Mtim)
+       fs.modTime = time.Unix(fs.sys.Mtim.Unix())
        fs.mode = FileMode(fs.sys.Mode & 0777)
        switch fs.sys.Mode & syscall.S_IFMT {
        case syscall.S_IFBLK:
@@ -41,11 +41,7 @@ func fillFileStatFromSys(fs *fileStat, name string) {
        }
 }
 
-func timespecToTime(ts syscall.Timespec) time.Time {
-       return time.Unix(ts.Sec, ts.Nsec)
-}
-
 // For testing.
 func atime(fi FileInfo) time.Time {
-       return timespecToTime(fi.Sys().(*syscall.Stat_t).Atim)
+       return time.Unix(fi.Sys().(*syscall.Stat_t).Atim.Unix())
 }
index bab4ffa7984cf961a816fac9f46ad97860e429b1..919ee44dd6b503b2c39690251b7a5e597ebc354c 100644 (file)
@@ -12,7 +12,7 @@ import (
 func fillFileStatFromSys(fs *fileStat, name string) {
        fs.name = basename(name)
        fs.size = fs.sys.Size
-       fs.modTime = timespecToTime(fs.sys.Mtimespec)
+       fs.modTime = time.Unix(fs.sys.Mtimespec.Unix())
        fs.mode = FileMode(fs.sys.Mode & 0777)
        switch fs.sys.Mode & syscall.S_IFMT {
        case syscall.S_IFBLK:
@@ -41,11 +41,7 @@ func fillFileStatFromSys(fs *fileStat, name string) {
        }
 }
 
-func timespecToTime(ts syscall.Timespec) time.Time {
-       return time.Unix(int64(ts.Sec), int64(ts.Nsec))
-}
-
 // For testing.
 func atime(fi FileInfo) time.Time {
-       return timespecToTime(fi.Sys().(*syscall.Stat_t).Atimespec)
+       return time.Unix(fi.Sys().(*syscall.Stat_t).Atimespec.Unix())
 }
index c3e9b5b5e53176fd443ee65176ce3a79ea1ae215..a137172e66de6f019089ba974371bdc67ab523ac 100644 (file)
@@ -14,7 +14,7 @@ import (
 func fillFileStatFromSys(fs *fileStat, name string) {
        fs.name = basename(name)
        fs.size = fs.sys.Size
-       fs.modTime = timespecToTime(fs.sys.Mtime, fs.sys.MtimeNsec)
+       fs.modTime = time.Unix(fs.sys.Mtime, fs.sys.MtimeNsec)
        fs.mode = FileMode(fs.sys.Mode & 0777)
        switch fs.sys.Mode & syscall.S_IFMT {
        case syscall.S_IFBLK:
@@ -43,12 +43,8 @@ func fillFileStatFromSys(fs *fileStat, name string) {
        }
 }
 
-func timespecToTime(sec, nsec int64) time.Time {
-       return time.Unix(sec, nsec)
-}
-
 // For testing.
 func atime(fi FileInfo) time.Time {
        st := fi.Sys().(*syscall.Stat_t)
-       return timespecToTime(st.Atime, st.AtimeNsec)
+       return time.Unix(st.Atime, st.AtimeNsec)
 }
index d36afa9ffd5e74c5116e6d638be6bc3536e24a01..316c26c7cab7af1e10ed3be1ace47d51d01c2b9e 100644 (file)
@@ -12,7 +12,7 @@ import (
 func fillFileStatFromSys(fs *fileStat, name string) {
        fs.name = basename(name)
        fs.size = fs.sys.Size
-       fs.modTime = timespecToTime(fs.sys.Mtim)
+       fs.modTime = time.Unix(fs.sys.Mtim.Unix())
        fs.mode = FileMode(fs.sys.Mode & 0777)
        switch fs.sys.Mode & syscall.S_IFMT {
        case syscall.S_IFBLK:
@@ -41,11 +41,7 @@ func fillFileStatFromSys(fs *fileStat, name string) {
        }
 }
 
-func timespecToTime(ts syscall.Timespec) time.Time {
-       return time.Unix(int64(ts.Sec), int64(ts.Nsec))
-}
-
 // For testing.
 func atime(fi FileInfo) time.Time {
-       return timespecToTime(fi.Sys().(*syscall.Stat_t).Atim)
+       return time.Unix(fi.Sys().(*syscall.Stat_t).Atim.Unix())
 }
index 11ebcacab85f1709cd9a78c1ddbe5d16d55f14ed..919ee44dd6b503b2c39690251b7a5e597ebc354c 100644 (file)
@@ -12,7 +12,7 @@ import (
 func fillFileStatFromSys(fs *fileStat, name string) {
        fs.name = basename(name)
        fs.size = fs.sys.Size
-       fs.modTime = timespecToTime(fs.sys.Mtimespec)
+       fs.modTime = time.Unix(fs.sys.Mtimespec.Unix())
        fs.mode = FileMode(fs.sys.Mode & 0777)
        switch fs.sys.Mode & syscall.S_IFMT {
        case syscall.S_IFBLK:
@@ -41,11 +41,7 @@ func fillFileStatFromSys(fs *fileStat, name string) {
        }
 }
 
-func timespecToTime(ts syscall.Timespec) time.Time {
-       return time.Unix(ts.Sec, int64(ts.Nsec))
-}
-
 // For testing.
 func atime(fi FileInfo) time.Time {
-       return timespecToTime(fi.Sys().(*syscall.Stat_t).Atimespec)
+       return time.Unix(fi.Sys().(*syscall.Stat_t).Atimespec.Unix())
 }
index 9df2d7f7737efc297db481a6287ef9a6f132efa0..316c26c7cab7af1e10ed3be1ace47d51d01c2b9e 100644 (file)
@@ -12,7 +12,7 @@ import (
 func fillFileStatFromSys(fs *fileStat, name string) {
        fs.name = basename(name)
        fs.size = fs.sys.Size
-       fs.modTime = timespecToTime(fs.sys.Mtim)
+       fs.modTime = time.Unix(fs.sys.Mtim.Unix())
        fs.mode = FileMode(fs.sys.Mode & 0777)
        switch fs.sys.Mode & syscall.S_IFMT {
        case syscall.S_IFBLK:
@@ -41,11 +41,7 @@ func fillFileStatFromSys(fs *fileStat, name string) {
        }
 }
 
-func timespecToTime(ts syscall.Timespec) time.Time {
-       return time.Unix(ts.Sec, int64(ts.Nsec))
-}
-
 // For testing.
 func atime(fi FileInfo) time.Time {
-       return timespecToTime(fi.Sys().(*syscall.Stat_t).Atim)
+       return time.Unix(fi.Sys().(*syscall.Stat_t).Atim.Unix())
 }
index 217bc6726d22ccfaf900efb4ae527c478d3c0ff8..316c26c7cab7af1e10ed3be1ace47d51d01c2b9e 100644 (file)
@@ -12,7 +12,7 @@ import (
 func fillFileStatFromSys(fs *fileStat, name string) {
        fs.name = basename(name)
        fs.size = fs.sys.Size
-       fs.modTime = timespecToTime(fs.sys.Mtim)
+       fs.modTime = time.Unix(fs.sys.Mtim.Unix())
        fs.mode = FileMode(fs.sys.Mode & 0777)
        switch fs.sys.Mode & syscall.S_IFMT {
        case syscall.S_IFBLK:
@@ -41,11 +41,7 @@ func fillFileStatFromSys(fs *fileStat, name string) {
        }
 }
 
-func timespecToTime(ts syscall.Timespec) time.Time {
-       return time.Unix(ts.Sec, ts.Nsec)
-}
-
 // For testing.
 func atime(fi FileInfo) time.Time {
-       return timespecToTime(fi.Sys().(*syscall.Stat_t).Atim)
+       return time.Unix(fi.Sys().(*syscall.Stat_t).Atim.Unix())
 }