From: David Symonds Date: Sat, 5 Nov 2011 00:28:23 +0000 (+1100) Subject: gofix: avoid panic on body-less functions in netudpgroup. X-Git-Tag: weekly.2011-11-08~28 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=c29cd8abb9e17c468843b097cb0d944ace6b2625;p=gostls13.git gofix: avoid panic on body-less functions in netudpgroup. R=rsc, r CC=golang-dev https://golang.org/cl/5347041 --- diff --git a/src/cmd/gofix/netudpgroup.go b/src/cmd/gofix/netudpgroup.go index 12a2efa287..b54beb0de3 100644 --- a/src/cmd/gofix/netudpgroup.go +++ b/src/cmd/gofix/netudpgroup.go @@ -30,7 +30,7 @@ func netudpgroup(f *ast.File) bool { fixed := false for _, d := range f.Decls { fd, ok := d.(*ast.FuncDecl) - if !ok { + if !ok || fd.Body == nil { continue } walk(fd.Body, func(n interface{}) { diff --git a/src/cmd/gofix/netudpgroup_test.go b/src/cmd/gofix/netudpgroup_test.go index 24f4abc167..88c0e093fc 100644 --- a/src/cmd/gofix/netudpgroup_test.go +++ b/src/cmd/gofix/netudpgroup_test.go @@ -28,6 +28,26 @@ func f() { err := x.JoinGroup(nil, gaddr) err = y.LeaveGroup(nil, gaddr) } +`, + }, + // Innocent function with no body. + { + Name: "netudpgroup.1", + In: `package main + +import "net" + +func f() + +var _ net.IP +`, + Out: `package main + +import "net" + +func f() + +var _ net.IP `, }, }