Skip to content

Commit

Permalink
fix error check (#288)
Browse files Browse the repository at this point in the history
  • Loading branch information
wongoo committed Nov 16, 2021
1 parent 57240d6 commit 9653a02
Show file tree
Hide file tree
Showing 6 changed files with 15 additions and 10 deletions.
9 changes: 7 additions & 2 deletions date_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,7 @@ func TestEncDateNull(t *testing.T) {
e *Encoder
d *Decoder
res interface{}
err error
)
v = "2014-02-09 06:15:23 +0800 CST"
tz, _ = time.Parse("2006-01-02 15:04:05 +0800 CST", v)
Expand All @@ -122,12 +123,16 @@ func TestEncDateNull(t *testing.T) {
Date3: d3,
}
e = NewEncoder()
e.Encode(date)
err = e.Encode(date)
if err != nil {
t.Fatal(err)
}
if len(e.Buffer()) == 0 {
t.Fail()
}
d = NewDecoder(e.Buffer())
res, _ = d.Decode()
res, err = d.Decode()
assert.Nil(t, err)
assert.Equal(t, ZeroDate, res.(*DateDemo).Date)
assert.Equal(t, 2, len(res.(*DateDemo).Dates))
assert.Equal(t, tz.Local().String(), (*res.(*DateDemo).Dates[0]).String())
Expand Down
6 changes: 3 additions & 3 deletions decode.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,12 @@ func NewDecoder(b []byte) *Decoder {
return &Decoder{reader: bufio.NewReader(bytes.NewReader(b)), typeRefs: &TypeRefs{records: map[string]bool{}}}
}

// NewDecoder generate a decoder instance
// NewDecoderSize generate a decoder instance.
func NewDecoderSize(b []byte, size int) *Decoder {
return &Decoder{reader: bufio.NewReaderSize(bytes.NewReader(b), size), typeRefs: &TypeRefs{records: map[string]bool{}}}
}

// NewDecoder generate a decoder instance with skip
// NewDecoderWithSkip generate a decoder instance with skip.
func NewDecoderWithSkip(b []byte) *Decoder {
return &Decoder{reader: bufio.NewReader(bytes.NewReader(b)), typeRefs: &TypeRefs{records: map[string]bool{}}, isSkip: true}
}
Expand Down Expand Up @@ -224,7 +224,7 @@ func (d *Decoder) DecodeValue() (interface{}, error) {
)

tag, err = d.ReadByte()
if err == io.EOF {
if perrors.Is(err, io.EOF) {
return nil, err
}

Expand Down
2 changes: 1 addition & 1 deletion java_sql_time.go
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ func (JavaSqlTimeSerializer) DecObject(d *Decoder, typ reflect.Type, cls *classI
d.appendRefs(vRef.Interface())

tag, err := d.ReadByte()
if err == io.EOF {
if perrors.Is(err, io.EOF) {
return nil, err
}
date, err := d.decDate(int32(tag))
Expand Down
4 changes: 2 additions & 2 deletions list.go
Original file line number Diff line number Diff line change
Expand Up @@ -359,7 +359,7 @@ func (d *Decoder) readTypedListValue(length int, listTyp string, isVariableArr b
for j := 0; j < length || isVariableArr; j++ {
it, err := d.DecodeValue()
if err != nil {
if err == io.EOF && isVariableArr {
if perrors.Is(err, io.EOF) && isVariableArr {
break
}
return nil, perrors.WithStack(err)
Expand Down Expand Up @@ -414,7 +414,7 @@ func (d *Decoder) readUntypedList(tag byte) (interface{}, error) {
for j := 0; j < length || isVariableArr; j++ {
it, err := d.DecodeValue()
if err != nil {
if err == io.EOF && isVariableArr {
if perrors.Is(err, io.EOF) && isVariableArr {
break
}
return nil, perrors.WithStack(err)
Expand Down
2 changes: 1 addition & 1 deletion map.go
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ func (d *Decoder) decMapByValue(value reflect.Value) error {
entryKey, err = d.DecodeValue()
if err != nil {
// EOF means the end flag 'Z' of map is already read
if err == io.EOF {
if perrors.Is(err, io.EOF) {
break
} else {
return perrors.WithStack(err)
Expand Down
2 changes: 1 addition & 1 deletion object.go
Original file line number Diff line number Diff line change
Expand Up @@ -499,7 +499,7 @@ func (d *Decoder) decInstance(typ reflect.Type, cls *classInfo) (interface{}, er
case reflect.Slice, reflect.Array:
m, err := d.decList(TAG_READ)
if err != nil {
if err == io.EOF {
if perrors.Is(err, io.EOF) {
break
}
return nil, perrors.WithStack(err)
Expand Down

0 comments on commit 9653a02

Please sign in to comment.