go/packages: use strings.EqualFold in sameFile to handle case-insensitive file systems
Name of file or URI must be checked ignorecase on Windows.
Change-Id: I61507b0aa95389c5e1f421f0702ba6ad17b79177
Reviewed-on: https://go-review.googlesource.com/c/160597
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
diff --git a/go/packages/packages.go b/go/packages/packages.go
index f4aac56..1e5836c 100644
--- a/go/packages/packages.go
+++ b/go/packages/packages.go
@@ -19,6 +19,7 @@
"log"
"os"
"path/filepath"
+ "strings"
"sync"
"golang.org/x/tools/go/gcexportdata"
@@ -838,7 +839,7 @@
// overlay case implies x==y.)
return true
}
- if filepath.Base(x) == filepath.Base(y) { // (optimisation)
+ if strings.EqualFold(filepath.Base(x), filepath.Base(y)) { // (optimisation)
if xi, err := os.Stat(x); err == nil {
if yi, err := os.Stat(y); err == nil {
return os.SameFile(xi, yi)