aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/service
diff options
context:
space:
mode:
Diffstat (limited to 'service')
-rw-r--r--service/service_tunnel.go7
1 files changed, 7 insertions, 0 deletions
diff --git a/service/service_tunnel.go b/service/service_tunnel.go
index c3ddf9e4..7ff8c0ff 100644
--- a/service/service_tunnel.go
+++ b/service/service_tunnel.go
@@ -8,6 +8,7 @@ package service
import (
"bufio"
"encoding/binary"
+ "fmt"
"golang.org/x/sys/windows"
"golang.zx2c4.com/winipcfg"
"log"
@@ -71,6 +72,12 @@ func (service *tunnelService) Execute(args []string, r <-chan svc.ChangeRequest,
}
}
log.SetOutput(elogger{elog})
+ defer func() {
+ if x := recover(); x != nil {
+ elog.Error(1, fmt.Sprint(x))
+ panic(x)
+ }
+ }()
conf, err := conf.LoadFromPath(service.path)
if err != nil {