Skip to content

Commit de8690d

Browse files
committed
feat: optional read supported
1 parent b0abbbf commit de8690d

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

decode.go

+5
Original file line numberDiff line numberDiff line change
@@ -1383,6 +1383,11 @@ func (d *decodeState) unmarshal(v any, opts decOpts) error {
13831383
return &InvalidUnmarshalError{reflect.TypeOf(v)}
13841384
}
13851385

1386+
// Return io.EOF to upper layer if reader has zero length.
1387+
if d.reader.Len() == 0 {
1388+
return io.EOF
1389+
}
1390+
13861391
// We decode rv not rv.Elem because the Unmarshaler interface
13871392
// test must be applied at the top level of the value.
13881393
err := d.value(rv, opts)

0 commit comments

Comments
 (0)