mirror of https://github.com/Xhofe/alist
26 lines
428 B
Go
26 lines
428 B
Go
package local
|
|
|
|
import (
|
|
"io/fs"
|
|
"os"
|
|
"path/filepath"
|
|
)
|
|
|
|
func isSymlinkDir(f fs.FileInfo, path string) bool {
|
|
if f.Mode()&os.ModeSymlink == os.ModeSymlink {
|
|
dst, err := os.Readlink(filepath.Join(path, f.Name()))
|
|
if err != nil {
|
|
return false
|
|
}
|
|
if !filepath.IsAbs(dst) {
|
|
dst = filepath.Join(path, dst)
|
|
}
|
|
stat, err := os.Stat(dst)
|
|
if err != nil {
|
|
return false
|
|
}
|
|
return stat.IsDir()
|
|
}
|
|
return false
|
|
}
|