From b27dd0cda846e636cc3d742d7c45a632c503e800 Mon Sep 17 00:00:00 2001 From: logikonline Date: Tue, 17 Mar 2026 11:55:18 -0400 Subject: [PATCH] refactor(pages): use maps.Copy in deepMergeArrays Replace manual map copy loop with maps.Copy from Go 1.21 stdlib. Cleaner and potentially more efficient. Pre-allocates merged map with correct capacity. --- routers/web/pages/pages.go | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/routers/web/pages/pages.go b/routers/web/pages/pages.go index 6791be7a3e..062eb9633a 100644 --- a/routers/web/pages/pages.go +++ b/routers/web/pages/pages.go @@ -14,6 +14,7 @@ import ( _ "image/jpeg" // register JPEG decoder for social card background images _ "image/png" // register PNG decoder for social card background images "io" + "maps" "math/big" "net/http" "path" @@ -1106,10 +1107,8 @@ func deepMergeArrays(dst, src []any) []any { srcMap, srcIsMap := src[i].(map[string]any) dstMap, dstIsMap := dst[i].(map[string]any) if srcIsMap && dstIsMap { - merged := make(map[string]any) - for k, v := range dstMap { - merged[k] = v - } + merged := make(map[string]any, len(dstMap)) + maps.Copy(merged, dstMap) result[i] = deepMerge(merged, srcMap) } else { result[i] = src[i]