libmicrohttpd

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

commit 8bb4ce7621be4e6bcd4bcdc7513b7c94fcded3b4
parent 32d09c83915ca7cab0890cdc246fc3bd63a2a97b
Author: Evgeny Grin (Karlson2k) <k2k@narod.ru>
Date:   Sat, 23 Apr 2016 16:16:01 +0000

test_quiesce: added more checks and more error reports

Diffstat:
Msrc/testcurl/test_quiesce.c | 22+++++++++++++++++++---
1 file changed, 19 insertions(+), 3 deletions(-)

diff --git a/src/testcurl/test_quiesce.c b/src/testcurl/test_quiesce.c @@ -152,7 +152,7 @@ ServeOneRequest(void *param) } MHD_stop_daemon (d); MHD_socket_close_(fd); - return NULL; + return done ? NULL : "Requests was not served by ServeOneRequest()"; } @@ -229,6 +229,14 @@ testGet (int type, int pool_count, int poll_flag) } fd = MHD_quiesce_daemon (d); + if (MHD_INVALID_SOCKET == fd) + { + fprintf (stderr, + "MHD_quiesce_daemon failed.\n"); + curl_easy_cleanup (c); + MHD_stop_daemon (d); + return 2; + } if (0 != pthread_create(&thrd, NULL, &ServeOneRequest, (void*)(intptr_t) fd)) { fprintf (stderr, "pthread_create failed\n"); @@ -411,8 +419,16 @@ testExternalGet () if (i == 0) { /* quiesce the daemon on the 1st iteration, so the 2nd should fail */ fd = MHD_quiesce_daemon(d); - if (MHD_INVALID_SOCKET == fd) - abort (); + if (MHD_INVALID_SOCKET == fd) + { + fprintf (stderr, + "MHD_quiesce_daemon failed.\n"); + curl_multi_remove_handle (multi, c); + curl_multi_cleanup (multi); + curl_easy_cleanup (c); + MHD_stop_daemon (d); + return 2; + } MHD_socket_close_ (fd); c = setupCURL (&cbc); multi = curl_multi_init ();