mirror of
https://github.com/redis/go-redis.git
synced 2025-07-28 06:42:00 +03:00
Don't create empty map for nil values
This commit is contained in:
16
command.go
16
command.go
@ -999,18 +999,20 @@ func xMessageSliceParser(rd *proto.Reader, n int64) (interface{}, error) {
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
v, err := rd.ReadArrayReply(stringInterfaceMapParser)
|
var values map[string]interface{}
|
||||||
if err != nil && err != proto.Nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
if v == nil || err == proto.Nil {
|
v, err := rd.ReadArrayReply(stringInterfaceMapParser)
|
||||||
v = make(map[string]interface{})
|
if err != nil {
|
||||||
|
if err != proto.Nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
values = v.(map[string]interface{})
|
||||||
}
|
}
|
||||||
|
|
||||||
msgs = append(msgs, XMessage{
|
msgs = append(msgs, XMessage{
|
||||||
ID: id,
|
ID: id,
|
||||||
Values: v.(map[string]interface{}),
|
Values: values,
|
||||||
})
|
})
|
||||||
return nil, nil
|
return nil, nil
|
||||||
})
|
})
|
||||||
|
@ -3598,7 +3598,7 @@ var _ = Describe("Commands", func() {
|
|||||||
Stream: "stream",
|
Stream: "stream",
|
||||||
Messages: []redis.XMessage{
|
Messages: []redis.XMessage{
|
||||||
{ID: "1-0", Values: map[string]interface{}{"uno": "un"}},
|
{ID: "1-0", Values: map[string]interface{}{"uno": "un"}},
|
||||||
{ID: "2-0", Values: map[string]interface{}{}},
|
{ID: "2-0", Values: nil},
|
||||||
{ID: "3-0", Values: map[string]interface{}{"tres": "troix"}},
|
{ID: "3-0", Values: map[string]interface{}{"tres": "troix"}},
|
||||||
}},
|
}},
|
||||||
}))
|
}))
|
||||||
|
Reference in New Issue
Block a user