aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2019-05-08 19:44:23 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2019-05-08 19:47:08 +0200
commit332dc55dc7c6d510392b566003c0c7fea4563f8f (patch)
treef6303bd7b627291a04c7ecc9b50b41b4b80e56cb
parentui: make window restoring and pop-up more aggressive (diff)
downloadwireguard-windows-332dc55dc7c6d510392b566003c0c7fea4563f8f.tar.xz
wireguard-windows-332dc55dc7c6d510392b566003c0c7fea4563f8f.zip
ui: do not allow removed items state changes to change tray state
runtime error: invalid memory address or nil pointer dereference goroutine 1 [running, locked to thread]: runtime/debug.Stack(0xc0000bbbc0, 0x9de240, 0x93bf40) C:/Users/Jason A. Donenfeld/Projects/wireguard-windows/.deps/go/src/runtime/debug/stack.go:24 +0xa4 golang.zx2c4.com/wireguard/windows/ui.RunUI.func1() C:/Users/Jason A. Donenfeld/Projects/wireguard-windows/ui/ui.go:25 +0x75 panic(0x9de240, 0x93bf40) C:/Users/Jason A. Donenfeld/Projects/wireguard-windows/.deps/go/src/runtime/panic.go:522 +0x1c3 github.com/lxn/walk.(*Action).Checked(...) C:/Users/Jason A. Donenfeld/Projects/wireguard-windows/.deps/gopath/pkg/mod/golang.zx2c4.com/wireguard/windows@v0.0.0-20190508085227-303a670b0ee4/action.go:118 golang.zx2c4.com/wireguard/windows/ui.(*Tray).SetTunnelState(0xc000106540, 0xc000041540, 0x2, 0xc000166001) C:/Users/Jason A. Donenfeld/Projects/wireguard-windows/ui/tray.go:272 +0xa1 golang.zx2c4.com/wireguard/windows/ui.(*Tray).onTunnelChange.func1() C:/Users/Jason A. Donenfeld/Projects/wireguard-windows/ui/tray.go:214 +0x99 github.com/lxn/walk.runSynchronized() C:/Users/Jason A. Donenfeld/Projects/wireguard-windows/.deps/gopath/pkg/mod/golang.zx2c4.com/wireguard/windows@v0.0.0-20190508085227-303a670b0ee4/form.go:55 +0x95 github.com/lxn/walk.(*FormBase).Run(0xc000166000, 0x0) C:/Users/Jason A. Donenfeld/Projects/wireguard-windows/.deps/gopath/pkg/mod/golang.zx2c4.com/wireguard/windows@v0.0.0-20190508085227-303a670b0ee4/form.go:413 +0x117 golang.zx2c4.com/wireguard/windows/ui.RunUI() C:/Users/Jason A. Donenfeld/Projects/wireguard-windows/ui/ui.go:79 +0x225 main.main() C:/Users/Jason A. Donenfeld/Projects/wireguard-windows/main.go:207 +0x2cf Reported-by: Jungle Boogie <jungleboogie0@gmail.com>
-rw-r--r--ui/tray.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/ui/tray.go b/ui/tray.go
index 64c58a8a..bbaf7f13 100644
--- a/ui/tray.go
+++ b/ui/tray.go
@@ -265,6 +265,9 @@ func (tray *Tray) updateGlobalState(globalState service.TunnelState) {
func (tray *Tray) SetTunnelState(tunnel *service.Tunnel, state service.TunnelState, showNotifications bool) {
tunnelAction := tray.tunnels[tunnel.Name]
+ if tunnelAction == nil {
+ return
+ }
actions := tray.ContextMenu().Actions()
activeCIDRsAction := actions.At(1)