From bf7b45bcc66731c861b11cc6b7c139e9bff30e14 Mon Sep 17 00:00:00 2001 From: filifa Date: Thu, 11 Jul 2024 22:43:16 -0500 Subject: [PATCH] remove case --- internal/statsapi/feed.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/internal/statsapi/feed.go b/internal/statsapi/feed.go index 152fc21..2c7b05e 100644 --- a/internal/statsapi/feed.go +++ b/internal/statsapi/feed.go @@ -79,11 +79,12 @@ func patch(obj any, path string, value any) error { if !found { err = setValue(obj, first, value) return err + } else if first == "" { + err = patch(obj, rest, value) + return err } switch v := obj.(type) { - case *FeedResponse: - err = patch(map[string]any(*v), rest, value) case map[string]any: err = patch(v[first], rest, value) case []any: @@ -105,7 +106,7 @@ func (f *FeedResponse) Patch(instr *instruction) { // TODO: need to handle each type of instruction separately: add, // replace, remove, copy, move log.Println("updating", instr.Path) - err := patch(f, instr.Path, instr.Value) + err := patch(map[string]any(*f), instr.Path, instr.Value) if err != nil { log.Println(err) }