From 2de4ae3b393437e5a3698c20c98a5301b18de476 Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Fri, 21 Mar 2025 17:18:35 +0800 Subject: [PATCH] dereference_or_zero --- http_template_funcs.go | 8 ++++++++ resources.go | 2 +- diff --git a/http_template_funcs.go b/http_template_funcs.go index 5395b92a4612f2b075d75c04ddbb4d0efd92c76f..2a7d82670773202017d0056206699610527bc980 100644 --- a/http_template_funcs.go +++ b/http_template_funcs.go @@ -29,3 +29,11 @@ func dereference[T any](p *T) T { return *p } + +func dereference_or_zero[T any](p *T) T { + if p != nil { + return *p + } + var z T + return z +} diff --git a/resources.go b/resources.go index 2576c12d4bf194868d160e1151e250638edcc5c6..fb67102b4701ae600d81762babb65f24eaa6aebd 100644 --- a/resources.go +++ b/resources.go @@ -44,7 +44,7 @@ "first_line": firstLine, "base_name": baseName, "path_escape": pathEscape, "query_escape": queryEscape, - "dereference_error": dereference[error], + "dereference_error": dereference_or_zero[error], }) err = fs.WalkDir(resourcesFS, "templates", func(path string, d fs.DirEntry, err error) error { -- 2.48.1