X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=http_build_query.c;h=ecad1d03272ebe5c7992a5d4ce5d5cbccf799e78;hp=689204cca6c706b6b83fcdf3bf133316fbb880a5;hb=650c6baa73c73a9f079eee2cfcade5a98a7fc2f5;hpb=9949be4659856993b6f3668c87cdcf158f6c2ddf diff --git a/http_build_query.c b/http_build_query.c index 689204c..ecad1d0 100644 --- a/http_build_query.c +++ b/http_build_query.c @@ -19,13 +19,14 @@ /* $Id$ */ #include "php_http.h" +#include "php_http_api.h" #include "php_ini.h" #include "ext/standard/url.h" #define URL_DEFAULT_ARG_SEP "&" /* {{{ php_url_encode_hash */ -PHPAPI int php_url_encode_hash_ex(HashTable *ht, smart_str *formstr, +PHP_HTTP_API int php_url_encode_hash_ex(HashTable *ht, smart_str *formstr, const char *num_prefix, int num_prefix_len, const char *key_prefix, int key_prefix_len, const char *key_suffix, int key_suffix_len, @@ -60,6 +61,7 @@ PHPAPI int php_url_encode_hash_ex(HashTable *ht, smart_str *formstr, key_len -= 1; } +#ifdef ZEND_ENGINE_2 /* handling for private & protected object properties */ if (key && *key == '\0' && type != NULL) { char *tmp; @@ -72,6 +74,7 @@ PHPAPI int php_url_encode_hash_ex(HashTable *ht, smart_str *formstr, zend_unmangle_property_name(key, &tmp, &key); key_len = strlen(key); } +#endif if (zend_hash_get_current_data_ex(ht, (void **)&zdata, NULL) == FAILURE || !zdata || !(*zdata)) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "Error traversing form data array."); @@ -127,8 +130,7 @@ PHPAPI int php_url_encode_hash_ex(HashTable *ht, smart_str *formstr, *p = '\0'; } ht->nApplyCount++; - php_url_encode_hash_ex(HASH_OF(*zdata), formstr, NULL, 0, newprefix, newprefix_len, "]", 1, -(Z_TYPE_PP(zdata) == IS_OBJECT ? *zdata : NULL) TSRMLS_CC); + php_url_encode_hash_ex(HASH_OF(*zdata), formstr, NULL, 0, newprefix, newprefix_len, "]", 1, (Z_TYPE_PP(zdata) == IS_OBJECT ? *zdata : NULL) TSRMLS_CC); ht->nApplyCount--; efree(newprefix); } else if (Z_TYPE_PP(zdata) == IS_NULL || Z_TYPE_PP(zdata) == IS_RESOURCE) {