summaryrefslogtreecommitdiffstats
path: root/navigation/pagemenus.go
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2021-07-30 10:56:45 +0200
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2021-07-30 21:07:52 +0200
commite3dc5240f01fd5ec67643e40f27c026d707da110 (patch)
treeb7558806edbdcfa86d2d73dea83c3455e11c7678 /navigation/pagemenus.go
parent268065cb2d8339392766a23703beaf7cc49d6b5c (diff)
Improve handling of <nil> Params
Fixes #8825
Diffstat (limited to 'navigation/pagemenus.go')
-rw-r--r--navigation/pagemenus.go12
1 files changed, 9 insertions, 3 deletions
diff --git a/navigation/pagemenus.go b/navigation/pagemenus.go
index f783e30cf..46ed5221e 100644
--- a/navigation/pagemenus.go
+++ b/navigation/pagemenus.go
@@ -75,10 +75,14 @@ func PageMenusFromPage(p Page) (PageMenus, error) {
return pm, nil
}
+ var wrapErr = func(err error) error {
+ return errors.Wrapf(err, "unable to process menus for page %q", p.Path())
+ }
+
// Could be a structured menu entry
menus, err := maps.ToStringMapE(ms)
if err != nil {
- return pm, errors.Wrapf(err, "unable to process menus for %q", p.LinkTitle())
+ return pm, wrapErr(err)
}
for name, menu := range menus {
@@ -86,10 +90,12 @@ func PageMenusFromPage(p Page) (PageMenus, error) {
if menu != nil {
ime, err := maps.ToStringMapE(menu)
if err != nil {
- return pm, errors.Wrapf(err, "unable to process menus for %q", p.LinkTitle())
+ return pm, wrapErr(err)
}
- menuEntry.MarshallMap(ime)
+ if err = menuEntry.MarshallMap(ime); err != nil {
+ return pm, wrapErr(err)
+ }
}
pm[name] = &menuEntry
}