Skip to content

Commit

Permalink
time: return ENOENT instead of ERROR_PATH_NOT_FOUND in windows
Browse files Browse the repository at this point in the history
When using windows some users got a weird error (File not found) when the timezone database is not found. It happens because some methods in the time package don't treat ERROR_PATH_NOT_FOUND and ENOTDIR. To solve it was added a conversion to ENOTENT error.

Fixes #50248

Change-Id: I11c84cf409e01eafb932aea43c7293c8218259b8
GitHub-Last-Rev: fe7fff9
GitHub-Pull-Request: #50906
Reviewed-on: https://go-review.googlesource.com/c/go/+/381957
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Ian Lance Taylor <iant@google.com>
Reviewed-by: David Chase <drchase@google.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
Auto-Submit: Ian Lance Taylor <iant@google.com>
  • Loading branch information
rlanhellas authored and gopherbot committed May 8, 2022
1 parent 0ad74fd commit 4c565a5
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions src/time/sys_windows.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@ func interrupt() {
func open(name string) (uintptr, error) {
fd, err := syscall.Open(name, syscall.O_RDONLY, 0)
if err != nil {
// This condition solves issue https://go.dev/issue/50248
if err == syscall.ERROR_PATH_NOT_FOUND {
err = syscall.ENOENT
}
return 0, err
}
return uintptr(fd), nil
Expand Down

0 comments on commit 4c565a5

Please sign in to comment.