From 65e7a45faac536f7ca00ecca59e6689cb2dff858 Mon Sep 17 00:00:00 2001 From: "Evgeny Grin (Karlson2k)" Date: Fri, 24 Mar 2017 15:33:58 +0300 Subject: [PATCH] Ignore "1" and "0" as thread pool sizes, do not create thread pools and warn user. --- src/microhttpd/daemon.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c index 277ed60a..cbf57773 100644 --- a/src/microhttpd/daemon.c +++ b/src/microhttpd/daemon.c @@ -4824,7 +4824,24 @@ parse_options_va (struct MHD_Daemon *daemon, case MHD_OPTION_THREAD_POOL_SIZE: daemon->worker_pool_size = va_arg (ap, unsigned int); - if (daemon->worker_pool_size >= (SIZE_MAX / sizeof (struct MHD_Daemon))) + if (0 == daemon->worker_pool_size) + { +#ifdef HAVE_MESSAGES + MHD_DLOG (daemon, + _("Warning: Zero size, specified for thread pool size, is ignored. " + "Thread pool is not used.\n")); +#endif + } + else if (1 == daemon->worker_pool_size) + { +#ifdef HAVE_MESSAGES + MHD_DLOG (daemon, + _("Warning: \"1\", specified for thread pool size, is ignored. " + "Thread pool is not used.\n")); +#endif + daemon->worker_pool_size = 0; + } + else if (daemon->worker_pool_size >= (SIZE_MAX / sizeof (struct MHD_Daemon))) { #ifdef HAVE_MESSAGES MHD_DLOG (daemon,