From 916c9c822a6bf0a66216d06f27648367c8a44fe5 Mon Sep 17 00:00:00 2001 From: Matt Joiner Date: Mon, 1 Dec 2014 23:28:47 -0600 Subject: [PATCH] Decoding bools has been wrong all along, always set to true --- bencode/decode.go | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/bencode/decode.go b/bencode/decode.go index 7db899ae..e90df6a2 100644 --- a/bencode/decode.go +++ b/bencode/decode.go @@ -113,10 +113,7 @@ func (d *decoder) parse_int(v reflect.Value) { } v.SetUint(n) case reflect.Bool: - if d.buf.Len() == 1 && d.buf.Bytes()[0] == '0' { - v.SetBool(false) - } - v.SetBool(true) + v.SetBool(d.buf.String() != "0") default: panic(&UnmarshalTypeError{ Value: "integer " + d.buf.String(), -- 2.48.1