diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2024-02-24 11:51:16 +0100 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2024-02-24 16:41:18 +0100 |
commit | 189b72331e02a17e25f5102af02486d25e27e826 (patch) | |
tree | 5b9b0c74c19acaa91214756df47472cc18cea76f /hugolib | |
parent | b2b7bfdd3abfd389d20e59b256104dd06bbcd951 (diff) |
tocss: Fix the import resolving from absolute to relative assets paths
Fixes #12137
Diffstat (limited to 'hugolib')
-rw-r--r-- | hugolib/filesystems/basefs.go | 2 | ||||
-rw-r--r-- | hugolib/filesystems/basefs_test.go | 30 |
2 files changed, 31 insertions, 1 deletions
diff --git a/hugolib/filesystems/basefs.go b/hugolib/filesystems/basefs.go index 25c58d516..5479e2266 100644 --- a/hugolib/filesystems/basefs.go +++ b/hugolib/filesystems/basefs.go @@ -362,7 +362,7 @@ func (d *SourceFilesystem) ReverseLookup(filename string, checkExists bool) ([]h var cps []hugofs.ComponentPath hugofs.WalkFilesystems(d.Fs, func(fs afero.Fs) bool { if rfs, ok := fs.(hugofs.ReverseLookupProvder); ok { - if c, err := rfs.ReverseLookup(filename, checkExists); err == nil { + if c, err := rfs.ReverseLookupComponent(d.Name, filename, checkExists); err == nil { cps = append(cps, c...) } } diff --git a/hugolib/filesystems/basefs_test.go b/hugolib/filesystems/basefs_test.go index f5b7b6170..f50bdb09f 100644 --- a/hugolib/filesystems/basefs_test.go +++ b/hugolib/filesystems/basefs_test.go @@ -478,6 +478,36 @@ Home. _ = stat("blog/b1.md") } +func TestReverseLookupShouldOnlyConsiderFilesInCurrentComponent(t *testing.T) { + files := ` +-- hugo.toml -- +baseURL = "https://example.com/" +[module] +[[module.mounts]] +source = "files/layouts" +target = "layouts" +[[module.mounts]] +source = "files/layouts/assets" +target = "assets" +-- files/layouts/l1.txt -- +l1 +-- files/layouts/assets/l2.txt -- +l2 +` + b := hugolib.Test(t, files) + + assetsFs := b.H.Assets + + for _, checkExists := range []bool{false, true} { + cps, err := assetsFs.ReverseLookup(filepath.FromSlash("files/layouts/assets/l2.txt"), checkExists) + b.Assert(err, qt.IsNil) + b.Assert(cps, qt.HasLen, 1) + cps, err = assetsFs.ReverseLookup(filepath.FromSlash("files/layouts/l2.txt"), checkExists) + b.Assert(err, qt.IsNil) + b.Assert(cps, qt.HasLen, 0) + } +} + func TestStaticComposite(t *testing.T) { files := ` -- hugo.toml -- |