libmicrohttpd

HTTP/1.x server C library (MHD 1.x, stable)
Log | Files | Refs | Submodules | README | LICENSE

commit a0118ad4e17359e8b1d836aec2d40b43d414c1d3
parent 86706fd27dde169fef4146d4014f948c2d7ffe55
Author: Christian Grothoff <christian@grothoff.org>
Date:   Fri,  4 Nov 2016 14:36:04 +0100

reverting dd327c1d13252373cd1730e445d19930417571bf as it introduces a race on 'resuming' which was previously deliberately avoided

Diffstat:
Msrc/microhttpd/daemon.c | 5++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c @@ -2455,12 +2455,11 @@ resume_suspended_connections (struct MHD_Daemon *daemon) int ret; ret = MHD_NO; - if (MHD_NO == daemon->resuming) - return ret; if (0 != (daemon->options & MHD_USE_THREAD_PER_CONNECTION)) MHD_mutex_lock_chk_ (&daemon->cleanup_connection_mutex); - next = daemon->suspended_connections_head; + if (MHD_NO != daemon->resuming) + next = daemon->suspended_connections_head; /* Clear the flag *only* if connections will be resumed otherwise it may accidentally clear flag that was set at the same time in other thread (just after 'if (MHD_NO != daemon->resuming)' in