提交 52064084 作者: Juan Batiz-Benet 提交者: Brian Tiger Chow

check type assertion

`v.([]byte)` coming from a datastore can panic.
`byt, ok := v.([]byte)` to be safe.

@whyrusleeping
上级 0fca9868
......@@ -280,7 +280,12 @@ func (dht *IpfsDHT) getLocal(key u.Key) ([]byte, error) {
if err != nil {
return nil, err
}
return v.([]byte), nil
byt, ok := v.([]byte)
if !ok {
return byt, errors.New("value stored in datastore not []byte")
}
return byt, nil
}
func (dht *IpfsDHT) putLocal(key u.Key, value []byte) error {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论