diff options
Diffstat (limited to 'src/microhttpd/daemon.c')
-rw-r--r-- | src/microhttpd/daemon.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c index bd5244b1..e176fae4 100644 --- a/src/microhttpd/daemon.c +++ b/src/microhttpd/daemon.c | |||
@@ -3613,6 +3613,9 @@ MHD_epoll (struct MHD_Daemon *daemon, | |||
3613 | int num_events; | 3613 | int num_events; |
3614 | unsigned int i; | 3614 | unsigned int i; |
3615 | unsigned int series_length; | 3615 | unsigned int series_length; |
3616 | #if HTTPS_SUPPORT | ||
3617 | _MHD_bool run_upgraded = 0; | ||
3618 | #endif | ||
3616 | 3619 | ||
3617 | if (-1 == daemon->epoll_fd) | 3620 | if (-1 == daemon->epoll_fd) |
3618 | return MHD_NO; /* we're down! */ | 3621 | return MHD_NO; /* we're down! */ |
@@ -3724,7 +3727,7 @@ MHD_epoll (struct MHD_Daemon *daemon, | |||
3724 | { | 3727 | { |
3725 | /* activity on an upgraded connection, we process | 3728 | /* activity on an upgraded connection, we process |
3726 | those in a separate epoll() */ | 3729 | those in a separate epoll() */ |
3727 | run_epoll_for_upgrade (daemon); | 3730 | run_upgraded = !0; |
3728 | continue; | 3731 | continue; |
3729 | } | 3732 | } |
3730 | #endif | 3733 | #endif |
@@ -3786,6 +3789,9 @@ MHD_epoll (struct MHD_Daemon *daemon, | |||
3786 | } | 3789 | } |
3787 | } | 3790 | } |
3788 | 3791 | ||
3792 | if (run_upgraded) | ||
3793 | run_epoll_for_upgrade (daemon); | ||
3794 | |||
3789 | /* we handle resumes here because we may have ready connections | 3795 | /* we handle resumes here because we may have ready connections |
3790 | that will not be placed into the epoll list immediately. */ | 3796 | that will not be placed into the epoll list immediately. */ |
3791 | if (MHD_USE_SUSPEND_RESUME == (daemon->options & MHD_USE_SUSPEND_RESUME)) | 3797 | if (MHD_USE_SUSPEND_RESUME == (daemon->options & MHD_USE_SUSPEND_RESUME)) |