Return error on unknown oid while decoding record instead of panic

pull/369/head
Iurii Krasnoshchok 2017-12-20 14:47:52 +01:00
parent cbb3fa5ecc
commit 0bc891e780
1 changed files with 4 additions and 3 deletions

View File

@ -98,9 +98,10 @@ func (dst *Record) DecodeBinary(ci *ConnInfo, src []byte) error {
var binaryDecoder BinaryDecoder
if dt, ok := ci.DataTypeForOID(fieldOID); ok {
if binaryDecoder, ok = dt.Value.(BinaryDecoder); !ok {
return errors.Errorf("unknown oid while decoding record: %v", fieldOID)
}
binaryDecoder, _ = dt.Value.(BinaryDecoder)
}
if binaryDecoder == nil {
return errors.Errorf("unknown oid while decoding record: %v", fieldOID)
}
var fieldBytes []byte