diff options
Diffstat (limited to 'vendor/github.com/go-redis/redis/internal/proto/write_buffer.go')
-rw-r--r-- | vendor/github.com/go-redis/redis/internal/proto/write_buffer.go | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/vendor/github.com/go-redis/redis/internal/proto/write_buffer.go b/vendor/github.com/go-redis/redis/internal/proto/write_buffer.go index 096b6d76a..cc4014fb4 100644 --- a/vendor/github.com/go-redis/redis/internal/proto/write_buffer.go +++ b/vendor/github.com/go-redis/redis/internal/proto/write_buffer.go @@ -71,17 +71,15 @@ func (w *WriteBuffer) append(val interface{}) error { } else { w.AppendString("0") } - default: - if bm, ok := val.(encoding.BinaryMarshaler); ok { - bb, err := bm.MarshalBinary() - if err != nil { - return err - } - w.AppendBytes(bb) - } else { - return fmt.Errorf( - "redis: can't marshal %T (consider implementing encoding.BinaryMarshaler)", val) + case encoding.BinaryMarshaler: + b, err := v.MarshalBinary() + if err != nil { + return err } + w.AppendBytes(b) + default: + return fmt.Errorf( + "redis: can't marshal %T (consider implementing encoding.BinaryMarshaler)", val) } return nil } |