diff --git a/weed/mount/weedfs_attr.go b/weed/mount/weedfs_attr.go index 7dc3c6b50..9cd643d95 100644 --- a/weed/mount/weedfs_attr.go +++ b/weed/mount/weedfs_attr.go @@ -145,6 +145,11 @@ func (wfs *WFS) setRootAttr(out *fuse.AttrOut) { func (wfs *WFS) setAttrByPbEntry(out *fuse.Attr, inode uint64, entry *filer_pb.Entry, calculateSize bool) { out.Ino = inode + out.Blocks = (out.Size + blockSize - 1) / blockSize + setBlksize(out, blockSize) + if entry == nil { + return + } if entry.Attributes != nil && entry.Attributes.Inode != 0 { out.Ino = entry.Attributes.Inode } @@ -154,11 +159,6 @@ func (wfs *WFS) setAttrByPbEntry(out *fuse.Attr, inode uint64, entry *filer_pb.E if entry.FileMode()&os.ModeSymlink != 0 { out.Size = uint64(len(entry.Attributes.SymlinkTarget)) } - out.Blocks = (out.Size + blockSize - 1) / blockSize - setBlksize(out, blockSize) - if entry == nil { - return - } out.Mtime = uint64(entry.Attributes.Mtime) out.Ctime = uint64(entry.Attributes.Mtime) out.Atime = uint64(entry.Attributes.Mtime)