summaryrefslogtreecommitdiff
path: root/pkg/backend/status.go
diff options
context:
space:
mode:
authorkali kaneko (leap communications) <kali@leap.se>2020-06-22 22:00:23 +0200
committerkali kaneko (leap communications) <kali@leap.se>2020-06-26 12:13:44 +0200
commit06a7453984adca0b34e62421a1baa8fe54b0d7bb (patch)
tree4eb7d0f31d540c33d2d6f53ed44257c06a4d8220 /pkg/backend/status.go
parent20266b063c1be8818d4582bff7b59486551ee447 (diff)
[refactor] several simplifications after review
- simplify notification routine (we dont need no rejected action). we just check every hour, as in the original code. - open links directly from Qt - rename some global variables to make them less cryptic - move cleanup function to the same module that created them
Diffstat (limited to 'pkg/backend/status.go')
-rw-r--r--pkg/backend/status.go11
1 files changed, 7 insertions, 4 deletions
diff --git a/pkg/backend/status.go b/pkg/backend/status.go
index 2e9c282..2bfb52d 100644
--- a/pkg/backend/status.go
+++ b/pkg/backend/status.go
@@ -4,6 +4,7 @@ import (
"bytes"
"encoding/json"
"log"
+ "sync"
"0xacab.org/leap/bitmask-vpn/pkg/bitmask"
"0xacab.org/leap/bitmask-vpn/pkg/config"
@@ -17,6 +18,8 @@ const (
failedStr = "failed"
)
+var statusMutex sync.Mutex
+
// ctx will be our glorious global object.
// if we ever switch again to a provider-agnostic app, we should keep a map here.
var ctx *connectionCtx
@@ -42,8 +45,8 @@ type connectionCtx struct {
}
func (c connectionCtx) toJson() ([]byte, error) {
- stmut.Lock()
- defer stmut.Unlock()
+ statusMutex.Lock()
+ defer statusMutex.Unlock()
b, err := json.Marshal(c)
if err != nil {
log.Println(err)
@@ -69,8 +72,8 @@ func (c connectionCtx) updateStatus() {
}
func setStatus(st status) {
- stmut.Lock()
- defer stmut.Unlock()
+ statusMutex.Lock()
+ defer statusMutex.Unlock()
ctx.Status = st
go trigger(OnStatusChanged)
}