lib/fs: Try EvalSymlinks without '\\?\' prefix on failure (fixes #5226) (#5227)

This commit is contained in:
Simon Frei
2018-09-26 20:28:20 +02:00
committed by Audrius Butkevicius
parent 91c3218a0c
commit 03d0f0dc34
4 changed files with 17 additions and 6 deletions

View File

@@ -12,7 +12,6 @@ import (
"context"
"errors"
"path/filepath"
"runtime"
"github.com/syncthing/notify"
)
@@ -23,13 +22,10 @@ import (
var backendBuffer = 500
func (f *BasicFilesystem) Watch(name string, ignore Matcher, ctx context.Context, ignorePerms bool) (<-chan Event, error) {
evalRoot, err := filepath.EvalSymlinks(f.root)
evalRoot, err := evalSymlinks(f.root)
if err != nil {
return nil, err
}
if runtime.GOOS == "windows" {
evalRoot = longFilenameSupport(evalRoot)
}
absName, err := rooted(name, evalRoot)
if err != nil {