X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_message.c;h=5a278f68c675f14cc51a24eaad7cdbb4cfce4ec4;hp=ffa9c3909a8e73787d73b77216f24433bca4f220;hb=bc088ae2915ef8e0d2d232bbbb2d091f5893d3c6;hpb=498493b4cb032edc2ec5b8baa51bebf70ad77d6a diff --git a/php_http_message.c b/php_http_message.c index ffa9c39..5a278f6 100644 --- a/php_http_message.c +++ b/php_http_message.c @@ -302,11 +302,6 @@ void php_http_message_update_headers(php_http_message_t *msg) ZVAL_LONG(h, size); zend_hash_update(&msg->hdrs, "Content-Length", sizeof("Content-Length"), &h, sizeof(zval *), NULL); - if ((h = php_http_message_header(msg, ZEND_STRL("Transfer-Encoding"), 0))) { - zend_hash_update(&msg->hdrs, "X-Original-Transfer-Encoding", sizeof("X-Original-Transfer-Encoding"), (void *) &h, sizeof(zval *), NULL); - zend_hash_del(&msg->hdrs, "Transfer-Encoding", sizeof("Transfer-Encoding")); - } - if (msg->body->boundary) { char *str; size_t len; @@ -1166,17 +1161,19 @@ static PHP_METHOD(HttpMessage, getHeader) if (!header_ce) { RETURN_ZVAL(header, 1, 1); } else if (instanceof_function(header_ce, php_http_header_class_entry TSRMLS_CC)) { + php_http_object_method_t cb; zval *header_name, **argv[2]; MAKE_STD_ZVAL(header_name); ZVAL_STRINGL(header_name, header_str, header_len, 1); - Z_ADDREF_P(header); argv[0] = &header_name; argv[1] = &header; object_init_ex(return_value, header_ce); - php_http_method_call(return_value, ZEND_STRL("__construct"), 2, argv, NULL TSRMLS_CC); + php_http_object_method_init(&cb, return_value, ZEND_STRL("__construct") TSRMLS_CC); + php_http_object_method_call(&cb, return_value, NULL, 2, argv TSRMLS_CC); + php_http_object_method_dtor(&cb); zval_ptr_dtor(&header_name); zval_ptr_dtor(&header);