X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_request_datashare_api.h;h=07bb9991b9bf92b9cb3c95a42f9011e6e7e000eb;hp=08b30edc9161ff225f722a651c069a3779ac14c5;hb=cd5137b3e7cb8fe55a32b1de626127e786a86d0d;hpb=7ea5445a6250f29f09d6b97db124cacf457f23c5 diff --git a/php_http_request_datashare_api.h b/php_http_request_datashare_api.h index 08b30ed..07bb999 100644 --- a/php_http_request_datashare_api.h +++ b/php_http_request_datashare_api.h @@ -21,18 +21,24 @@ typedef struct _http_request_datashare_lock_t { CURL *ch; MUTEX_T mx; } http_request_datashare_lock; + +typedef union _http_request_datashare_handle_t { + zend_llist *list; + http_request_datashare_lock *locks; +} http_request_datashare_handle; +#else +typedef struct _http_request_datashare_handle_t { + zend_llist *list; +} http_request_datashare_handle; #endif typedef struct _http_request_datashare_t { CURLSH *ch; zend_bool persistent; - zend_llist *handles; -#ifdef ZTS - http_request_datashare_lock *locks; -#endif + http_request_datashare_handle handle; } http_request_datashare; -#define HTTP_RSHARE_HANDLES(s) ((s)->persistent ? &HTTP_G->request.datashare.handles : (s)->handles) +#define HTTP_RSHARE_HANDLES(s) ((s)->persistent ? &HTTP_G->request.datashare.handles : (s)->handle.list) #define http_request_datashare_global_get _http_request_datashare_global_get extern http_request_datashare *_http_request_datashare_global_get(void);