mirror of https://github.com/jackc/pgx.git
Document that Decode* must not keep src
- Also fix Bytea.DecodeBinary to not keep src.v3-numeric-wip
parent
7da69cd3db
commit
5cf4b97681
|
@ -106,7 +106,10 @@ func (dst *Bytea) DecodeBinary(src []byte) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
*dst = Bytea{Bytes: src, Status: Present}
|
||||
buf := make([]byte, len(src))
|
||||
copy(buf, src)
|
||||
|
||||
*dst = Bytea{Bytes: buf, Status: Present}
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -80,10 +80,16 @@ type Value interface {
|
|||
}
|
||||
|
||||
type BinaryDecoder interface {
|
||||
// DecodeBinary decodes src into BinaryDecoder. If src is nil then the
|
||||
// original SQL value is NULL. BinaryDecoder MUST not retain a reference to
|
||||
// src. It MUST make a copy if it needs to retain the raw bytes.
|
||||
DecodeBinary(src []byte) error
|
||||
}
|
||||
|
||||
type TextDecoder interface {
|
||||
// DecodeText decodes src into TextDecoder. If src is nil then the original
|
||||
// SQL value is NULL. TextDecoder MUST not retain a reference to src. It MUST
|
||||
// make a copy if it needs to retain the raw bytes.
|
||||
DecodeText(src []byte) error
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue