From 301b93020c237e16daea79b29c80e06f4418ec17 Mon Sep 17 00:00:00 2001 From: Rob Swindell <rob@synchro.net> Date: Sun, 28 Feb 2021 13:22:28 -0800 Subject: [PATCH] Fix "clients remain" log line issue introduced in 2eb58683 The service clients count is now a protected int, so deal. On Windows, this was resulting in the "total" and "served" values logged as 4294967295. --- src/sbbs3/services.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/sbbs3/services.c b/src/sbbs3/services.c index a61e7633b0..bd8716e2e1 100644 --- a/src/sbbs3/services.c +++ b/src/sbbs3/services.c @@ -1167,7 +1167,7 @@ static void js_service_thread(void* arg) } FREE_AND_NULL(service_client.subscan); - protected_uint32_adjust(&service->clients, -1); + ulong remain = protected_uint32_adjust(&service->clients, -1); update_clients(); #ifdef _WIN32 @@ -1178,8 +1178,8 @@ static void js_service_thread(void* arg) thread_down(); if(service->log_level >= LOG_INFO) - lprintf(LOG_INFO,"%04d %s service thread terminated (%u clients remain, %lu total, %lu served)" - ,socket, service->protocol, service->clients, active_clients(), service->served); + lprintf(LOG_INFO,"%04d %s service thread terminated (%lu clients remain, %lu total, %lu served)" + ,socket, service->protocol, remain, active_clients(), service->served); client_off(socket); close_socket(socket); @@ -1486,7 +1486,7 @@ static void native_service_thread(void* arg) system(fullcmd); - protected_uint32_adjust(&service->clients, -1); + ulong remain = protected_uint32_adjust(&service->clients, -1); update_clients(); #ifdef _WIN32 @@ -1497,8 +1497,8 @@ static void native_service_thread(void* arg) thread_down(); if(service->log_level >= LOG_INFO) - lprintf(LOG_INFO,"%04d %s service thread terminated (%u clients remain, %lu total, %lu served)" - ,socket, service->protocol, service->clients, active_clients(), service->served); + lprintf(LOG_INFO,"%04d %s service thread terminated (%lu clients remain, %lu total, %lu served)" + ,socket, service->protocol, remain, active_clients(), service->served); client_off(socket); close_socket(socket); -- GitLab