Client disconnect (closing / refreshing browser tab) not handled correctly
2016/08/23 09:16:54 http: panic serving [fe80::ace4:a849:3368:bc76%vEthernet (Ext Virtual Switch)]:57436: runtime error: invalid memory address or nil pointer dereference
goroutine 154 [running]:
net/http.(_conn).serve.func1(0xc0821cee80)
C:/Go/src/net/http/server.go:1389 +0xc8
panic(0x7f14c0, 0xc0820020a0)
C:/Go/src/runtime/panic.go:426 +0x4f7
golang.org/x/net/websocket.(_Conn).Close(0x0, 0x0, 0x0)
D:/work/go/src/golang.org/x/net/websocket/websocket.go:217 +0xd8
github.com/arukim/galaxy/core.(_Router).Listen(0xc0821ab100, 0xc0822122d0)
D:/work/go/src/github.com/arukim/galaxy/core/router.go:88 +0x33e
github.com/arukim/galaxy/core.NewPlayer(0xc0822122d0, 0xc08202f958, 0x2, 0x2, 0xe25700)
D:/work/go/src/github.com/arukim/galaxy/core/player.go:18 +0xa5
github.com/arukim/galaxy/login.(_Server).Listen.func1(0xc0822122d0)
D:/work/go/src/github.com/arukim/galaxy/login/server.go:76 +0x1ec
golang.org/x/net/websocket.Server.serveWebSocket(0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9355a0, ...)
D:/work/go/src/golang.org/x/net/websocket/server.go:89 +0x2d9
golang.org/x/net/websocket.Handler.ServeHTTP(0xc0820fc150, 0xe25830, 0xc0821a7380, 0xc0821d4d20)
D:/work/go/src/golang.org/x/net/websocket/server.go:112 +0x91
net/http.(_ServeMux).ServeHTTP(0xc082050b10, 0xe25830, 0xc0821a7380, 0xc0821d4d20)
C:/Go/src/net/http/server.go:1910 +0x184
net/http.serverHandler.ServeHTTP(0xc0820b1180, 0xe25830, 0xc0821a7380, 0xc0821d4d20)
C:/Go/src/net/http/server.go:2081 +0x1a5
net/http.(_conn).serve(0xc0821cee80)
C:/Go/src/net/http/server.go:1472 +0xf35
created by net/http.(*Server).Serve
C:/Go/src/net/http/server.go:2137 +0x455