aboutsummaryrefslogtreecommitdiff
path: root/cmp/internal
diff options
context:
space:
mode:
authormattdee123 <mattdee123@gmail.com>2017-07-28 16:24:32 -0400
committerJoe Tsai <joetsai@digital-static.net>2017-07-28 13:24:32 -0700
commitf94e52cad91c65a63acc1e75d4be223ea22e99bc (patch)
treea6cb1d06858272398b9009329283b08bc9df48c5 /cmp/internal
parentbf7264101727b1948ee27dd768f7ad48c823bca1 (diff)
downloadgo-cmp-f94e52cad91c65a63acc1e75d4be223ea22e99bc.tar.gz
Fix bug with nil fmt.Stringers (#30)
Diffstat (limited to 'cmp/internal')
-rw-r--r--cmp/internal/value/format.go2
1 files changed, 1 insertions, 1 deletions
diff --git a/cmp/internal/value/format.go b/cmp/internal/value/format.go
index da9d6cf..a501e1b 100644
--- a/cmp/internal/value/format.go
+++ b/cmp/internal/value/format.go
@@ -44,7 +44,7 @@ func formatAny(v reflect.Value, conf formatConfig, visited map[uintptr]bool) str
return "<non-existent>"
}
if conf.useStringer && v.Type().Implements(stringerIface) {
- if v.Kind() == reflect.Ptr && v.IsNil() {
+ if (v.Kind() == reflect.Ptr || v.Kind() == reflect.Interface) && v.IsNil() {
return "<nil>"
}
return fmt.Sprintf("%q", v.Interface().(fmt.Stringer).String())