diff options
author | Gokhan Sengun <gokhansengun@gmail.com> | 2011-12-06 23:41:24 +0100 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2011-12-07 15:37:05 +0100 |
commit | 2b24dd870e81512542f238cb1b124cecb942a34f (patch) | |
tree | 151c695ddd70f74cfc0e62503aeef575a6adbdac /tests/libtest/test.h | |
parent | 46724b87b769ff50e1e6b90d2aabc50b8ba7c1a9 (diff) |
multi interface: fix block when CONNECT_ONLY option is used
Diffstat (limited to 'tests/libtest/test.h')
-rw-r--r-- | tests/libtest/test.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/libtest/test.h b/tests/libtest/test.h index 34b8c9f3e..861a571a5 100644 --- a/tests/libtest/test.h +++ b/tests/libtest/test.h @@ -242,6 +242,31 @@ extern int unitfail; /* ---------------------------------------------------------------- */ +#define exe_multi_remove_handle(A,B,Y,Z) do { \ + CURLMcode ec; \ + if((ec = curl_multi_remove_handle((A),(B))) != CURLM_OK) { \ + fprintf(stderr, "%s:%d curl_multi_remove_handle() failed, " \ + "with code %d (%s)\n", \ + (Y), (Z), (int)ec, curl_multi_strerror(ec)); \ + res = (int)ec; \ + } \ +} WHILE_FALSE + +#define res_multi_remove_handle(A,B) \ + exe_multi_remove_handle((A),(B),(__FILE__),(__LINE__)) + +#define chk_multi_remove_handle(A,B,Y,Z) do { \ + exe_multi_remove_handle((A),(B),(Y),(Z)); \ + if(res) \ + goto test_cleanup; \ +} WHILE_FALSE + + +#define multi_remove_handle(A,B) \ + chk_multi_remove_handle((A),(B),(__FILE__),(__LINE__)) + +/* ---------------------------------------------------------------- */ + #define exe_multi_perform(A,B,Y,Z) do { \ CURLMcode ec; \ if((ec = curl_multi_perform((A),(B))) != CURLM_OK) { \ |