Fix site.GetPage, never do short lookups for paths with leadig slash - hugo - [fork] hugo port for 9front
 (HTM) git clone git@git.drkhsh.at/hugo.git
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Submodules
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 8cf96f244ad710fa02c3f9729fef5a1bedb7632a
 (DIR) parent 82af94d1f56b36a99be4f6c55697d105cee9dd84
 (HTM) Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
       Date:   Thu,  4 Jul 2024 09:05:29 +0200
       
       Fix site.GetPage, never do short lookups for paths with leadig slash
       
       Fixes #12638
       
       Diffstat:
         M hugolib/pagecollections.go          |       9 +--------
         M hugolib/pagecollections_test.go     |      29 +++++++++++++++++++++++++++++
       
       2 files changed, 30 insertions(+), 8 deletions(-)
       ---
 (DIR) diff --git a/hugolib/pagecollections.go b/hugolib/pagecollections.go
       @@ -110,11 +110,6 @@ func (c *pageFinder) getPageForRefs(ref ...string) (page.Page, error) {
                        key = refs[1]
                }
        
       -        key = filepath.ToSlash(key)
       -        if !strings.HasPrefix(key, "/") {
       -                key = "/" + key
       -        }
       -
                return c.getPage(nil, key)
        }
        
       @@ -211,9 +206,7 @@ func (c *pageFinder) getContentNodeForRef(context page.Page, isReflink, hadExten
                var doSimpleLookup bool
                if isReflink || context == nil {
                        slashCount := strings.Count(inRef, "/")
       -                if slashCount <= 1 {
       -                        doSimpleLookup = slashCount == 0 || ref[0] == '/'
       -                }
       +                doSimpleLookup = slashCount == 0
                }
        
                if !doSimpleLookup {
 (DIR) diff --git a/hugolib/pagecollections_test.go b/hugolib/pagecollections_test.go
       @@ -413,6 +413,35 @@ layout: p2
                b.AssertFileContent("public/s1/p2/index.html", "p1")
        }
        
       +func TestGetPageNewsVsTagsNewsIssue12638(t *testing.T) {
       +        t.Parallel()
       +
       +        files := `
       +-- hugo.toml --
       +disableKinds = ['rss','section','sitemap']
       +[taxonomies]
       +  tag = "tags"
       +-- content/p1.md --
       +---
       +title: p1
       +tags: [news]
       +---
       +-- layouts/index.html --
       +/tags/news: {{ with .Site.GetPage "/tags/news" }}{{ .Title }}{{ end }}|
       +news: {{ with .Site.GetPage "news" }}{{ .Title }}{{ end }}|
       +/news: {{ with .Site.GetPage "/news" }}{{ .Title }}{{ end }}|
       +
       +`
       +
       +        b := Test(t, files)
       +
       +        b.AssertFileContent("public/index.html",
       +                "/tags/news: News|",
       +                "news: News|",
       +                "/news: |",
       +        )
       +}
       +
        func TestGetPageBundleToRegular(t *testing.T) {
                files := `
        -- hugo.toml --