Skip to content

Commit 4eb2deb

Browse files
committed
Don't create empty map when value is missing
1 parent a8704c3 commit 4eb2deb

File tree

2 files changed

+10
-8
lines changed

2 files changed

+10
-8
lines changed

command.go

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1003,18 +1003,20 @@ func xMessageSliceParser(rd *proto.Reader, n int64) (interface{}, error) {
10031003
return nil, err
10041004
}
10051005

1006-
v, err := rd.ReadArrayReply(stringInterfaceMapParser)
1007-
if err != nil && err != proto.Nil {
1008-
return nil, err
1009-
}
1006+
var values map[string]interface{}
10101007

1011-
if v == nil || err == proto.Nil {
1012-
v = make(map[string]interface{})
1008+
v, err := rd.ReadArrayReply(stringInterfaceMapParser)
1009+
if err != nil {
1010+
if err != proto.Nil {
1011+
return nil, err
1012+
}
1013+
} else {
1014+
values = v.(map[string]interface{})
10131015
}
10141016

10151017
msgs[i] = XMessage{
10161018
ID: id,
1017-
Values: v.(map[string]interface{}),
1019+
Values: values,
10181020
}
10191021
return nil, nil
10201022
})

commands_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3638,7 +3638,7 @@ var _ = Describe("Commands", func() {
36383638
Stream: "stream",
36393639
Messages: []redis.XMessage{
36403640
{ID: "1-0", Values: map[string]interface{}{"uno": "un"}},
3641-
{ID: "2-0", Values: map[string]interface{}{}},
3641+
{ID: "2-0", Values: nil},
36423642
{ID: "3-0", Values: map[string]interface{}{"tres": "troix"}},
36433643
}},
36443644
}))

0 commit comments

Comments
 (0)