]> Cypherpunks repositories - gostls13.git/commitdiff
net: fix undetected set and not used error
authorDave Cheney <dave@cheney.net>
Tue, 2 Jun 2015 01:04:45 +0000 (11:04 +1000)
committerDave Cheney <dave@cheney.net>
Tue, 2 Jun 2015 05:35:29 +0000 (05:35 +0000)
Fixes an error where the compiler did not spot that the shadowed err
value was set again after being read. That second assignment was lost
as the value was redeclared in an inner scope.

Spotted by Gordon Klass, https://groups.google.com/forum/#!topic/golang-nuts/MdDLbvOjb4o

Change-Id: I28f2da6f98c52afcbb45e17d2b4f36c586598f98
Reviewed-on: https://go-review.googlesource.com/10600
Reviewed-by: Mikio Hara <mikioh.mikioh@gmail.com>
src/net/file_unix.go

index df884d16038d27203c4278382a8f445038f7531c..83a2936c824fd1eb8debdcd2b28c98312428721a 100644 (file)
@@ -45,7 +45,8 @@ func newFileFD(f *os.File, sa SocketAddr) (*netFD, error) {
                fd, err = newFD(s, -1, -1, laddr.Network())
        } else {
                family := syscall.AF_UNSPEC
-               sotype, err := syscall.GetsockoptInt(s, syscall.SOL_SOCKET, syscall.SO_TYPE)
+               var sotype int
+               sotype, err = syscall.GetsockoptInt(s, syscall.SOL_SOCKET, syscall.SO_TYPE)
                if err != nil {
                        closeFunc(s)
                        return nil, os.NewSyscallError("getsockopt", err)