summaryrefslogtreecommitdiffstats
path: root/helpers
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2018-11-15 13:35:28 +0100
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2018-11-15 16:37:11 +0100
commit5df2b79dd2734e9a00ed1692328f58c385676468 (patch)
tree43c116e383b20e8dcec07cb4ab8ac92d77b171d7 /helpers
parent12742bac71c65d65dc56548b643debda94757aee (diff)
Fix Permalink for resource, baseURL with path and canonifyURLs set
Fixes #5226
Diffstat (limited to 'helpers')
-rw-r--r--helpers/pathspec.go8
-rw-r--r--helpers/url.go10
2 files changed, 7 insertions, 11 deletions
diff --git a/helpers/pathspec.go b/helpers/pathspec.go
index 847029f44..b82ebd992 100644
--- a/helpers/pathspec.go
+++ b/helpers/pathspec.go
@@ -69,11 +69,9 @@ func NewPathSpecWithBaseBaseFsProvided(fs *hugofs.Fs, cfg config.Provider, baseB
ProcessingStats: NewProcessingStats(p.Lang()),
}
- if !ps.CanonifyURLs {
- basePath := ps.BaseURL.Path()
- if basePath != "" && basePath != "/" {
- ps.BasePath = basePath
- }
+ basePath := ps.BaseURL.Path()
+ if basePath != "" && basePath != "/" {
+ ps.BasePath = basePath
}
return ps, nil
diff --git a/helpers/url.go b/helpers/url.go
index f167fd3d2..a24f05b12 100644
--- a/helpers/url.go
+++ b/helpers/url.go
@@ -283,15 +283,13 @@ func AddContextRoot(baseURL, relativePath string) string {
}
// PrependBasePath prepends any baseURL sub-folder to the given resource
-// if canonifyURLs is disabled.
-// If canonifyURLs is set, we will globally prepend the absURL with any sub-folder,
-// so avoid doing anything here to avoid getting double paths.
-func (p *PathSpec) PrependBasePath(rel string) string {
- if p.BasePath != "" {
+func (p *PathSpec) PrependBasePath(rel string, isAbs bool) string {
+ basePath := p.GetBasePath(!isAbs)
+ if basePath != "" {
rel = filepath.ToSlash(rel)
// Need to prepend any path from the baseURL
hadSlash := strings.HasSuffix(rel, "/")
- rel = path.Join(p.BasePath, rel)
+ rel = path.Join(basePath, rel)
if hadSlash {
rel += "/"
}