diff --git a/internal/statsapi/feed.go b/internal/statsapi/feed.go index 5f1ab02..4f3d887 100644 --- a/internal/statsapi/feed.go +++ b/internal/statsapi/feed.go @@ -54,11 +54,14 @@ func patch(obj any, path string, value any) error { break } - if idx < len(v) { - v[idx] = value - } else { - v = append(v, value) + if len(v) <= idx { + arr := make([]any, idx+1) + for i, val := range v { + arr[i] = val + } + v = arr } + v[idx] = value default: err = errors.New("couldn't determine type") }