diff --git a/services/redis/oas_commit b/services/redis/oas_commit index b687a3969..69bfa80b3 100644 --- a/services/redis/oas_commit +++ b/services/redis/oas_commit @@ -1 +1 @@ -f22dd14374388602d895c8892b3e5b110dc16582 +864bdad12a54f612df8fcdb6e41dd2933e94c3af diff --git a/services/redis/v1api/client.go b/services/redis/v1api/client.go index 142273f2a..b542fc628 100644 --- a/services/redis/v1api/client.go +++ b/services/redis/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/redis/v2api/client.go b/services/redis/v2api/client.go index a7f5e2160..1139f175c 100644 --- a/services/redis/v2api/client.go +++ b/services/redis/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 {