You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by wo...@apache.org on 2021/11/16 10:42:23 UTC

[dubbo-go-hessian2] branch master updated: fix error check (#288)

This is an automated email from the ASF dual-hosted git repository.

wongoo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo-go-hessian2.git


The following commit(s) were added to refs/heads/master by this push:
     new 9653a02  fix error check (#288)
9653a02 is described below

commit 9653a02986fcf3c6f20d2aff634475ad7bfa35e5
Author: 望哥 <ge...@163.com>
AuthorDate: Tue Nov 16 18:42:16 2021 +0800

    fix error check (#288)
---
 date_test.go     | 9 +++++++--
 decode.go        | 6 +++---
 java_sql_time.go | 2 +-
 list.go          | 4 ++--
 map.go           | 2 +-
 object.go        | 2 +-
 6 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/date_test.go b/date_test.go
index 7e1d36a..f0a8b6f 100644
--- a/date_test.go
+++ b/date_test.go
@@ -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)
@@ -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())
diff --git a/decode.go b/decode.go
index 00b8461..89af853 100644
--- a/decode.go
+++ b/decode.go
@@ -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}
 }
@@ -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
 	}
 
diff --git a/java_sql_time.go b/java_sql_time.go
index 18c2a49..8edee13 100644
--- a/java_sql_time.go
+++ b/java_sql_time.go
@@ -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))
diff --git a/list.go b/list.go
index b93f22e..94603c8 100644
--- a/list.go
+++ b/list.go
@@ -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)
@@ -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)
diff --git a/map.go b/map.go
index cd340df..034ccb1 100644
--- a/map.go
+++ b/map.go
@@ -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)
diff --git a/object.go b/object.go
index 84ee94e..45a7eb2 100644
--- a/object.go
+++ b/object.go
@@ -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)