🎨 macOS 端对工作空间放置在 iCloud 路径下做检查 https://github.com/siyuan-note/siyuan/issues/7747

This commit is contained in:
Liang Ding 2023-03-23 08:55:19 +08:00
parent 932ebc1ad9
commit 4d51ca3ad1
No known key found for this signature in database
GPG key ID: 136F30F901A2231D
2 changed files with 53 additions and 21 deletions

View file

@ -262,31 +262,11 @@ func isICloudPath(absPath string) bool {
// macOS 端对工作空间放置在 iCloud 路径下做检查 https://github.com/siyuan-note/siyuan/issues/7747
iCloudRoot := filepath.Join(HomeDir, "Library", "Mobile Documents")
err := filepath.Walk(iCloudRoot, func(path string, info os.FileInfo, err error) error {
err := WalkWithSymlinks(iCloudRoot, func(path string, info os.FileInfo, err error) error {
if nil != err {
return err
}
if 0 != info.Mode()&os.ModeSymlink && 0 != info.Mode()&os.ModeDir {
resolved, symErr := filepath.EvalSymlinks(path)
if nil != symErr {
logging.LogErrorf("resolve symlink [%s] failed: %s", path, symErr)
return nil
}
filepath.Walk(resolved, func(path string, info os.FileInfo, err error) error {
if nil != err {
return err
}
if absPath == strings.ToLower(path) {
logging.LogInfof("under symlink path: %s", path)
return fmt.Errorf("found")
}
return nil
})
}
logging.LogInfof("path: %s", path)
return nil
})