summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjwijenbergh <jeroenwijenbergh@protonmail.com>2022-09-12 07:56:46 +0200
committerjwijenbergh <jeroenwijenbergh@protonmail.com>2022-09-12 07:56:46 +0200
commitbb9e00598505c46c48fa3d6eedaee99eb7c219c6 (patch)
tree548e670bf5ec0a0bb8a91eda2124c744827b71aa
parenteb21880077d59e5b5fd7aac3353f4c8cc6bcba43 (diff)
State: More accurate back transitions
-rw-r--r--state.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/state.go b/state.go
index 965c934..f059a5d 100644
--- a/state.go
+++ b/state.go
@@ -190,10 +190,12 @@ func (state *VPNState) retryConfigAuth(chosenServer server.Server, forceTCP bool
if errors.As(configErr, &error) {
retryConfig, retryConfigType, retryConfigErr := state.getConfigAuth(chosenServer, forceTCP)
if retryConfigErr != nil {
+ state.GoBack()
return "", "", &types.WrappedErrorMessage{Message: errorMessage, Err: retryConfigErr}
}
return retryConfig, retryConfigType, nil
}
+ state.GoBack()
return "", "", &types.WrappedErrorMessage{Message: errorMessage, Err: configErr}
}
return config, configType, nil
@@ -215,7 +217,6 @@ func (state *VPNState) getConfig(
config, configType, configErr := state.retryConfigAuth(chosenServer, forceTCP)
if configErr != nil {
- // Go back
return "", "", &types.WrappedErrorMessage{Message: errorMessage, Err: configErr}
}
@@ -233,6 +234,7 @@ func (state *VPNState) SetSecureLocation(countryCode string) error {
server, serverErr := state.Discovery.GetServerByCountryCode(countryCode, "secure_internet")
if serverErr != nil {
+ state.GoBack()
return &types.WrappedErrorMessage{Message: errorMessage, Err: serverErr}
}