X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=src%2Fphp_http_params.c;h=5ba191f161e4590b6a1d71deabb4c475433c63e3;hb=6c4fa8e6cfc009a5116c0a111e305e4f6bff1860;hp=9b40cfefdc767dafc1945213db20fdd45c17001a;hpb=cfc3b88a84587eb61b8275a69e9d07431d3275a9;p=m6w6%2Fext-http diff --git a/src/php_http_params.c b/src/php_http_params.c index 9b40cfe..5ba191f 100644 --- a/src/php_http_params.c +++ b/src/php_http_params.c @@ -200,8 +200,8 @@ static void prepare_dimension(php_http_buffer_t *buf, php_http_buffer_t *keybuf, zval *val; php_http_buffer_t prefix; - if (!ZEND_HASH_GET_APPLY_COUNT(ht)) { - ZEND_HASH_INC_APPLY_COUNT(ht); + if (!HT_IS_RECURSIVE(ht)) { + HT_PROTECT_RECURSION(ht); php_http_buffer_init(&prefix); php_http_buffer_append(&prefix, keybuf->data, keybuf->used); @@ -235,7 +235,7 @@ static void prepare_dimension(php_http_buffer_t *buf, php_http_buffer_t *keybuf, php_http_buffer_cut(&prefix, keybuf->used, prefix.used - keybuf->used); } ZEND_HASH_FOREACH_END(); - ZEND_HASH_DEC_APPLY_COUNT(ht); + HT_UNPROTECT_RECURSION(ht); php_http_buffer_dtor(&prefix); }