summaryrefslogtreecommitdiff
path: root/pkg/backend/actions.go
diff options
context:
space:
mode:
authorkali kaneko (leap communications) <kali@leap.se>2021-03-11 04:37:51 +0100
committerkali kaneko (leap communications) <kali@leap.se>2021-03-11 17:20:50 +0100
commitda761575541809a3a91fad3e469aa3079f435f65 (patch)
tree06b0183f9d57079f28ffc44420c1b32c056c2b93 /pkg/backend/actions.go
parentc4bfc04603c361e6a3833f5846d311a73073cd18 (diff)
[bug] fail gracefully on connection initialization errors
There's some corner cases that were very badly captured. On the first place, it's confusing to quit on connection errors. Secondly, a side-effect of aborting the initialization of the bitmask object was a semi-random segfault when trying to access the object. Here I pass any connection errors to the gui, but leave to the user to quit the app. This probably will need more work when we want to terminate the app on unrecoverable errors (no polkit, etc...), but for now it makes the systray much more usable. - Resolves: #465
Diffstat (limited to 'pkg/backend/actions.go')
-rw-r--r--pkg/backend/actions.go6
1 files changed, 3 insertions, 3 deletions
diff --git a/pkg/backend/actions.go b/pkg/backend/actions.go
index 725a550..e45b026 100644
--- a/pkg/backend/actions.go
+++ b/pkg/backend/actions.go
@@ -2,14 +2,14 @@ package backend
import (
"log"
- "os"
)
func startVPN() {
+ setError("")
err := ctx.bm.StartVPN(ctx.Provider)
if err != nil {
- log.Println(err)
- os.Exit(1)
+ log.Println("ERROR: ", err)
+ setError(err.Error())
}
}