shithub: hugo

Download patch

ref: 3b3e771d613b3d8b9c54bc8b42e4bae7ba0bbb68
parent: 12876ec991982de27773d127e2030b1eeb2826b2
author: Tatsushi Demachi <[email protected]>
date: Thu Jan 28 14:27:35 EST 2016

Check for exported fields in embedded structs

This fixes a exported field check condition in a way described at Go
issue https://golang.org/issue/12367

According to the issue comments, this fix should be safe under Go 1.6.

--- a/tpl/template_funcs.go
+++ b/tpl/template_funcs.go
@@ -588,7 +588,7 @@
 	case reflect.Struct:
 		ft, ok := obj.Type().FieldByName(elemName)
 		if ok {
-			if ft.PkgPath != "" {
+			if ft.PkgPath != "" && !ft.Anonymous {
 				return zero, fmt.Errorf("%s is an unexported field of struct type %s", elemName, typ)
 			}
 			return obj.FieldByIndex(ft.Index), nil