diff options
author | Christian Grothoff <christian@grothoff.org> | 2018-02-27 23:28:01 +0100 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2018-02-27 23:28:01 +0100 |
commit | fc495439b4e78c021bf25dce3609f47061e8c658 (patch) | |
tree | 1659efae34d23d65f6b0d0e628aaf531608dc0ad /src/lib | |
parent | 46bbae5663de2e71f613728df2e0849bfcfb573e (diff) | |
download | libmicrohttpd-fc495439b4e78c021bf25dce3609f47061e8c658.tar.gz libmicrohttpd-fc495439b4e78c021bf25dce3609f47061e8c658.zip |
call completion handler also for upgrade connections
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/action_from_response.c | 1 | ||||
-rw-r--r-- | src/lib/request_resume.c | 8 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/lib/action_from_response.c b/src/lib/action_from_response.c index 007363fb..43f33cb5 100644 --- a/src/lib/action_from_response.c +++ b/src/lib/action_from_response.c | |||
@@ -23,6 +23,7 @@ | |||
23 | * @author Christian Grothoff | 23 | * @author Christian Grothoff |
24 | */ | 24 | */ |
25 | #include "internal.h" | 25 | #include "internal.h" |
26 | #include "connection_call_handlers.h" | ||
26 | 27 | ||
27 | 28 | ||
28 | /** | 29 | /** |
diff --git a/src/lib/request_resume.c b/src/lib/request_resume.c index 8a231292..5742f6ac 100644 --- a/src/lib/request_resume.c +++ b/src/lib/request_resume.c | |||
@@ -23,7 +23,7 @@ | |||
23 | * @author Christian Grothoff | 23 | * @author Christian Grothoff |
24 | */ | 24 | */ |
25 | #include "internal.h" | 25 | #include "internal.h" |
26 | 26 | #include "connection_close.h" | |
27 | 27 | ||
28 | /** | 28 | /** |
29 | * Resume handling of network data for suspended request. It is | 29 | * Resume handling of network data for suspended request. It is |
@@ -43,7 +43,7 @@ void | |||
43 | MHD_request_resume (struct MHD_Request *request) | 43 | MHD_request_resume (struct MHD_Request *request) |
44 | { | 44 | { |
45 | struct MHD_Daemon *daemon = request->daemon; | 45 | struct MHD_Daemon *daemon = request->daemon; |
46 | 46 | ||
47 | if (daemon->disallow_suspend_resume) | 47 | if (daemon->disallow_suspend_resume) |
48 | MHD_PANIC (_("Cannot resume connections without enabling MHD_ALLOW_SUSPEND_RESUME!\n")); | 48 | MHD_PANIC (_("Cannot resume connections without enabling MHD_ALLOW_SUSPEND_RESUME!\n")); |
49 | MHD_mutex_lock_chk_ (&daemon->cleanup_connection_mutex); | 49 | MHD_mutex_lock_chk_ (&daemon->cleanup_connection_mutex); |
@@ -81,7 +81,7 @@ MHD_resume_suspended_connections_ (struct MHD_Daemon *daemon) | |||
81 | struct MHD_Connection *prev = NULL; | 81 | struct MHD_Connection *prev = NULL; |
82 | bool ret; | 82 | bool ret; |
83 | const bool used_thr_p_c = (MHD_TM_THREAD_PER_CONNECTION == daemon->threading_model); | 83 | const bool used_thr_p_c = (MHD_TM_THREAD_PER_CONNECTION == daemon->threading_model); |
84 | 84 | ||
85 | mhd_assert (NULL == daemon->worker_pool); | 85 | mhd_assert (NULL == daemon->worker_pool); |
86 | ret = false; | 86 | ret = false; |
87 | MHD_mutex_lock_chk_ (&daemon->cleanup_connection_mutex); | 87 | MHD_mutex_lock_chk_ (&daemon->cleanup_connection_mutex); |
@@ -159,6 +159,8 @@ MHD_resume_suspended_connections_ (struct MHD_Daemon *daemon) | |||
159 | /* Data forwarding was finished (for TLS connections) AND | 159 | /* Data forwarding was finished (for TLS connections) AND |
160 | * application was closed upgraded connection. | 160 | * application was closed upgraded connection. |
161 | * Insert connection into cleanup list. */ | 161 | * Insert connection into cleanup list. */ |
162 | MHD_connection_close_ (pos, | ||
163 | MHD_CONNECTION_NOTIFY_CLOSED); | ||
162 | DLL_insert (daemon->cleanup_head, | 164 | DLL_insert (daemon->cleanup_head, |
163 | daemon->cleanup_tail, | 165 | daemon->cleanup_tail, |
164 | pos); | 166 | pos); |