@@ -230,12 +230,11 @@ func unmarshalVarchar(info TypeInfo, data []byte, value interface{}) error {
*v = string(data)
return nil
case *[]byte:
- var dataCopy []byte
if data != nil {
- dataCopy = make([]byte, len(data))
- copy(dataCopy, data)
+ *v = copyBytes(data)
+ } else {
+ *v = nil
}
- *v = dataCopy
rv := reflect.ValueOf(value)
@@ -851,6 +851,13 @@ var marshalTests = []struct {
nil,
},
+ {
+ NativeType{proto: 2, typ: TypeBlob},
+ []byte(nil),
+ ([]byte)(nil),
+ nil,
+ },
func decimalize(s string) *inf.Dec {