diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2021-07-30 10:56:45 +0200 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2021-07-30 21:07:52 +0200 |
commit | e3dc5240f01fd5ec67643e40f27c026d707da110 (patch) | |
tree | b7558806edbdcfa86d2d73dea83c3455e11c7678 /navigation/pagemenus.go | |
parent | 268065cb2d8339392766a23703beaf7cc49d6b5c (diff) |
Improve handling of <nil> Params
Fixes #8825
Diffstat (limited to 'navigation/pagemenus.go')
-rw-r--r-- | navigation/pagemenus.go | 12 |
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 } |