bencode/decode.go | 18 ++++++------------ diff --git a/bencode/decode.go b/bencode/decode.go index 08d7861c7e6a03cadc766e61bc700b86edf64cab..9c42578a7ed7387a5783ab07db61a016e96b74cb 100644 --- a/bencode/decode.go +++ b/bencode/decode.go @@ -661,18 +661,12 @@ } return dict } -func (d *Decoder) parseListInterface() interface{} { - var list []interface{} - for { - valuei, ok := d.parseValueInterface() - if !ok { - break - } - +func (d *Decoder) parseListInterface() (list []interface{}) { + list = []interface{}{} + valuei, ok := d.parseValueInterface() + for ok { list = append(list, valuei) + valuei, ok = d.parseValueInterface() } - if list == nil { - list = make([]interface{}, 0) - } - return list + return }