summaryrefslogtreecommitdiff
path: root/src/gnutls.c
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2021-08-19 16:48:59 -0700
committerSean Whitton <spwhitton@spwhitton.name>2021-08-19 16:48:59 -0700
commit07fcbb558d797272b9f43547da60beda485873a3 (patch)
tree77d5da14e9f9d9d8b1d877c70c01296fd3893796 /src/gnutls.c
parentc9bdeff3e45a7ac84a74a81bb048046f82dddc91 (diff)
parentfb81c8c3adf8633f2f617c82f6019aef630860c7 (diff)
downloademacs-07fcbb558d797272b9f43547da60beda485873a3.tar.gz
Merge remote-tracking branch 'origin/master' into athena/unstable
Diffstat (limited to 'src/gnutls.c')
-rw-r--r--src/gnutls.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/gnutls.c b/src/gnutls.c
index aa245ee5c39..22e7f2cbc17 100644
--- a/src/gnutls.c
+++ b/src/gnutls.c
@@ -625,14 +625,11 @@ gnutls_try_handshake (struct Lisp_Process *proc)
while ((ret = gnutls_handshake (state)) < 0)
{
- do
- ret = gnutls_handshake (state);
- while (ret == GNUTLS_E_INTERRUPTED);
-
- if (0 <= ret || emacs_gnutls_handle_error (state, ret) == 0
- || non_blocking)
+ if (emacs_gnutls_handle_error (state, ret) == 0) /* fatal */
break;
maybe_quit ();
+ if (non_blocking && ret != GNUTLS_E_INTERRUPTED)
+ break;
}
proc->gnutls_initstage = GNUTLS_STAGE_HANDSHAKE_TRIED;