MemDir now reports a size
diff --git a/httpFs.go b/httpFs.go index af44344..a08f0bd 100644 --- a/httpFs.go +++ b/httpFs.go
@@ -36,6 +36,7 @@ if dir == "" { dir = "." } + f, err := d.fs.Open(filepath.Join(dir, filepath.FromSlash(path.Clean("/"+name)))) if err != nil { return nil, err
diff --git a/memfile.go b/memfile.go index fcf80d2..4815c6b 100644 --- a/memfile.go +++ b/memfile.go
@@ -191,8 +191,13 @@ // Implements os.FileInfo func (s *InMemoryFileInfo) Name() string { return s.file.Name() } -func (s *InMemoryFileInfo) Size() int64 { return int64(len(s.file.data)) } func (s *InMemoryFileInfo) Mode() os.FileMode { return s.file.mode } func (s *InMemoryFileInfo) ModTime() time.Time { return s.file.modtime } func (s *InMemoryFileInfo) IsDir() bool { return s.file.dir } func (s *InMemoryFileInfo) Sys() interface{} { return nil } +func (s *InMemoryFileInfo) Size() int64 { + if s.IsDir() { + return int64(42) + } + return int64(len(s.file.data)) +}