summaryrefslogtreecommitdiffhomepage
path: root/source/filesystem.go
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <[email protected]>2021-07-13 11:41:02 +0200
committerBjørn Erik Pedersen <[email protected]>2021-07-15 17:14:26 +0200
commit022c4795510306e08a4aba31504ca382d41c7fac (patch)
treed4c29f62038d0f336d90f32f46bc5b4f5c3ddc28 /source/filesystem.go
parentf27e542442d19436f1428cc22bb03aca398d37a7 (diff)
downloadhugo-022c4795510306e08a4aba31504ca382d41c7fac.tar.gz
hugo-022c4795510306e08a4aba31504ca382d41c7fac.zip
hugofs: Make FileMeta a struct
This commit started out investigating a `concurrent map read write` issue, ending by replacing the map with a struct. This is easier to reason about, and it's more effective: ``` name old time/op new time/op delta SiteNew/Regular_Deep_content_tree-16 71.5ms ± 3% 69.4ms ± 5% ~ (p=0.200 n=4+4) name old alloc/op new alloc/op delta SiteNew/Regular_Deep_content_tree-16 29.7MB ± 0% 27.9MB ± 0% -5.82% (p=0.029 n=4+4) name old allocs/op new allocs/op delta SiteNew/Regular_Deep_content_tree-16 313k ± 0% 303k ± 0% -3.35% (p=0.029 n=4+4) ``` See #8749
Diffstat (limited to 'source/filesystem.go')
-rw-r--r--source/filesystem.go4
1 files changed, 2 insertions, 2 deletions
diff --git a/source/filesystem.go b/source/filesystem.go
index 1cd75f032..4d509c566 100644
--- a/source/filesystem.go
+++ b/source/filesystem.go
@@ -80,7 +80,7 @@ func (f *Filesystem) captureFiles() error {
}
meta := fi.Meta()
- filename := meta.Filename()
+ filename := meta.Filename
b, err := f.shouldRead(filename, fi)
if err != nil {
@@ -105,7 +105,7 @@ func (f *Filesystem) captureFiles() error {
}
func (f *Filesystem) shouldRead(filename string, fi hugofs.FileMetaInfo) (bool, error) {
- ignore := f.SourceSpec.IgnoreFile(fi.Meta().Filename())
+ ignore := f.SourceSpec.IgnoreFile(fi.Meta().Filename)
if fi.IsDir() {
if ignore {