From 1264a6e472dd79009551d06a64c28c6085055c02 Mon Sep 17 00:00:00 2001 From: dmiller Date: Mon, 25 Nov 2024 22:09:07 +0000 Subject: [PATCH] Increment first, then decrement; avoid clearing desired bit --- nsock/src/nsock_core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nsock/src/nsock_core.c b/nsock/src/nsock_core.c index 432a72738..07144f691 100644 --- a/nsock/src/nsock_core.c +++ b/nsock/src/nsock_core.c @@ -551,10 +551,10 @@ void handle_write_result(struct npool *ms, struct nevent *nse, enum nse_status s switch(err) { case SSL_ERROR_WANT_READ: case SSL_ERROR_WANT_WRITE: - evclr = socket_count_dec_ssl_desire(nse); evset = (err == SSL_ERROR_WANT_READ) ? socket_count_read_inc(iod) : socket_count_write_inc(iod); + evclr = socket_count_dec_ssl_desire(nse); update_events(iod, ms, nse, evset, evclr); nse->sslinfo.ssl_desire = err; break; @@ -727,10 +727,10 @@ static int do_actual_read(struct npool *ms, struct nevent *nse) { switch (err) { case SSL_ERROR_WANT_READ: case SSL_ERROR_WANT_WRITE: - evclr = socket_count_dec_ssl_desire(nse); evset = (err == SSL_ERROR_WANT_READ) ? socket_count_read_inc(iod) : socket_count_write_inc(iod); + evclr = socket_count_dec_ssl_desire(nse); update_events(iod, ms, nse, evset, evclr); nse->sslinfo.ssl_desire = err; /* Not EOF! */