Apply FileMode fixes to Inode.Mode()
This commit is contained in:
+7
-13
@@ -81,23 +81,17 @@ func Read(r io.Reader, blockSize uint32) (i Inode, err error) {
|
|||||||
|
|
||||||
func (i Inode) Mode() (out fs.FileMode) {
|
func (i Inode) Mode() (out fs.FileMode) {
|
||||||
out = fs.FileMode(i.Perm)
|
out = fs.FileMode(i.Perm)
|
||||||
switch i.Data.(type) {
|
switch i.Type {
|
||||||
case Directory:
|
case Dir, EDir:
|
||||||
out |= fs.ModeDir
|
out |= fs.ModeDir
|
||||||
case EDirectory:
|
case Sym, ESym:
|
||||||
out |= fs.ModeDir
|
|
||||||
case Symlink:
|
|
||||||
out |= fs.ModeSymlink
|
out |= fs.ModeSymlink
|
||||||
case ESymlink:
|
case Char, EChar, Block, EBlock:
|
||||||
out |= fs.ModeSymlink
|
|
||||||
case Device:
|
|
||||||
out |= fs.ModeDevice
|
out |= fs.ModeDevice
|
||||||
case EDevice:
|
case Fifo, EFifo:
|
||||||
out |= fs.ModeDevice
|
|
||||||
case IPC:
|
|
||||||
out |= fs.ModeNamedPipe
|
|
||||||
case EIPC:
|
|
||||||
out |= fs.ModeNamedPipe
|
out |= fs.ModeNamedPipe
|
||||||
|
case Sock, ESock:
|
||||||
|
out |= fs.ModeSocket
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user