diff --git a/services/logme/oas_commit b/services/logme/oas_commit index 200235745..8ae9a8db5 100644 --- a/services/logme/oas_commit +++ b/services/logme/oas_commit @@ -1 +1 @@ -615e0c091b55fd1ae8e4931c26902127bddf6ac6 +e9fe931e91e0b8f067d5c12518398a52062ca794 diff --git a/services/logme/v1api/client.go b/services/logme/v1api/client.go index 4f276ed24..60bcc9dc1 100644 --- a/services/logme/v1api/client.go +++ b/services/logme/v1api/client.go @@ -461,6 +461,15 @@ func (c *APIClient) decode(v interface{}, b []byte, contentType string) (err err *s = string(b) return nil } + if r, ok := v.(*io.Reader); ok { + *r = bytes.NewReader(b) + return nil + } + // Must stay before the JSON branch: json.Unmarshal would base64-decode into *[]byte. + if p, ok := v.(*[]byte); ok { + *p = b + return nil + } if f, ok := v.(*os.File); ok { f, err = os.CreateTemp("", "HttpClientFile") if err != nil { diff --git a/services/logme/v2api/client.go b/services/logme/v2api/client.go index 640a4c52a..f62cbbc8e 100644 --- a/services/logme/v2api/client.go +++ b/services/logme/v2api/client.go @@ -461,6 +461,15 @@ func (c *APIClient) decode(v interface{}, b []byte, contentType string) (err err *s = string(b) return nil } + if r, ok := v.(*io.Reader); ok { + *r = bytes.NewReader(b) + return nil + } + // Must stay before the JSON branch: json.Unmarshal would base64-decode into *[]byte. + if p, ok := v.(*[]byte); ok { + *p = b + return nil + } if f, ok := v.(*os.File); ok { f, err = os.CreateTemp("", "HttpClientFile") if err != nil {