From: Matt Joiner <anacrolix@gmail.com>
Date: Fri, 23 Oct 2015 01:37:30 +0000 (+1100)
Subject: bencode: Can't get zero type of a nil interface
X-Git-Tag: v1.0.0~1009
X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=47a245309897dba4b1a331668e1d20eb56d9d7e7;p=btrtrc.git

bencode: Can't get zero type of a nil interface
---

diff --git a/bencode/encode.go b/bencode/encode.go
index 18793ea2..17da1def 100644
--- a/bencode/encode.go
+++ b/bencode/encode.go
@@ -181,7 +181,9 @@ func (e *encoder) reflect_value(v reflect.Value) {
 			e.reflect_value(v.Index(i))
 		}
 		e.write_string("e")
-	case reflect.Interface, reflect.Ptr:
+	case reflect.Interface:
+		e.reflect_value(v.Elem())
+	case reflect.Ptr:
 		if v.IsNil() {
 			v = reflect.Zero(v.Type().Elem())
 		} else {