projects
/
m6w6
/
ext-http
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
|
github
raw
|
inline
| side by side
--crashes; ++leaks;
[m6w6/ext-http]
/
src
/
php_http_client_curl.c
diff --git
a/src/php_http_client_curl.c
b/src/php_http_client_curl.c
index 1626b712e41496c6d98561c7ec794f067c830016..f07bb8f4abbcefa148b39b7a2d2a2b5ef718192f 100644
(file)
--- a/
src/php_http_client_curl.c
+++ b/
src/php_http_client_curl.c
@@
-21,7
+21,7
@@
# include <openssl/ssl.h>
#endif
#if PHP_HTTP_HAVE_LIBCURL_GNUTLS
# include <openssl/ssl.h>
#endif
#if PHP_HTTP_HAVE_LIBCURL_GNUTLS
-# include <gnutls.h>
+# include <gnutls
/gnutls
.h>
#endif
typedef struct php_http_client_curl_handler {
#endif
typedef struct php_http_client_curl_handler {
@@
-2206,7
+2206,7
@@
static ZEND_RESULT_CODE php_http_client_curl_dequeue(php_http_client_t *h, php_h
php_http_client_curl_t *curl = h->ctx;
php_http_client_curl_handler_t *handler = enqueue->opaque;
php_http_client_curl_t *curl = h->ctx;
php_http_client_curl_handler_t *handler = enqueue->opaque;
- if (h->callback.depth) {
+ if (h->callback.depth
&& !CG(unclean_shutdown)
) {
php_error_docref(NULL, E_WARNING, "Could not dequeue request while executing callbacks");
return FAILURE;
}
php_error_docref(NULL, E_WARNING, "Could not dequeue request while executing callbacks");
return FAILURE;
}
@@
-2429,6
+2429,14
@@
php_http_client_ops_t *php_http_client_curl_get_ops(void)
return &php_http_client_curl_ops;
}
return &php_http_client_curl_ops;
}
+#define REGISTER_NS_STRING_OR_NULL_CONSTANT(ns, name, str, flags) \
+ do { \
+ if ((str) != NULL) { \
+ REGISTER_NS_STRING_CONSTANT(ns, name, str, flags); \
+ } else { \
+ REGISTER_NS_NULL_CONSTANT(ns, name, flags); \
+ } \
+ } while (0)
PHP_MINIT_FUNCTION(http_client_curl)
{
PHP_MINIT_FUNCTION(http_client_curl)
{
@@
-2509,12
+2517,12
@@
PHP_MINIT_FUNCTION(http_client_curl)
REGISTER_NS_STRING_CONSTANT("http\\Client\\Curl", "VERSIONS", curl_version(), CONST_CS|CONST_PERSISTENT);
#if CURLVERSION_NOW >= 0
REGISTER_NS_STRING_CONSTANT("http\\Client\\Curl\\Versions", "CURL", (char *) info->version, CONST_CS|CONST_PERSISTENT);
REGISTER_NS_STRING_CONSTANT("http\\Client\\Curl", "VERSIONS", curl_version(), CONST_CS|CONST_PERSISTENT);
#if CURLVERSION_NOW >= 0
REGISTER_NS_STRING_CONSTANT("http\\Client\\Curl\\Versions", "CURL", (char *) info->version, CONST_CS|CONST_PERSISTENT);
- REGISTER_NS_STRING_CONSTANT("http\\Client\\Curl\\Versions", "SSL", (char *) info->ssl_version, CONST_CS|CONST_PERSISTENT);
- REGISTER_NS_STRING_CONSTANT("http\\Client\\Curl\\Versions", "LIBZ", (char *) info->libz_version, CONST_CS|CONST_PERSISTENT);
+ REGISTER_NS_STRING_
OR_NULL_
CONSTANT("http\\Client\\Curl\\Versions", "SSL", (char *) info->ssl_version, CONST_CS|CONST_PERSISTENT);
+ REGISTER_NS_STRING_
OR_NULL_
CONSTANT("http\\Client\\Curl\\Versions", "LIBZ", (char *) info->libz_version, CONST_CS|CONST_PERSISTENT);
# if CURLVERSION_NOW >= 1
# if CURLVERSION_NOW >= 1
- REGISTER_NS_STRING_CONSTANT("http\\Client\\Curl\\Versions", "ARES", (char *) info->ares, CONST_CS|CONST_PERSISTENT);
+ REGISTER_NS_STRING_
OR_NULL_
CONSTANT("http\\Client\\Curl\\Versions", "ARES", (char *) info->ares, CONST_CS|CONST_PERSISTENT);
# if CURLVERSION_NOW >= 2
# if CURLVERSION_NOW >= 2
- REGISTER_NS_STRING_CONSTANT("http\\Client\\Curl\\Versions", "IDN", (char *) info->libidn, CONST_CS|CONST_PERSISTENT);
+ REGISTER_NS_STRING_
OR_NULL_
CONSTANT("http\\Client\\Curl\\Versions", "IDN", (char *) info->libidn, CONST_CS|CONST_PERSISTENT);
# endif
# endif
#endif
# endif
# endif
#endif