X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_message.c;h=8c1f40ccbd077da096d6037d02a298a78014ceae;hp=a6414e400dea8182bf3324c828d4d572e26e7d9b;hb=a9934a75410f25ba6c27cd7c93b4211b15c70b5e;hpb=675133e438d78d42f48ad922c340e1e43bdaae11 diff --git a/php_http_message.c b/php_http_message.c index a6414e4..8c1f40c 100644 --- a/php_http_message.c +++ b/php_http_message.c @@ -300,6 +300,14 @@ void php_http_message_update_headers(php_http_message_t *msg) zval_ptr_dtor(&h); } } + } else if ((h = php_http_message_header(msg, ZEND_STRL("Content-Length"), 1))) { + zval *h_cpy = php_http_ztyp(IS_LONG, h); + + zval_ptr_dtor(&h); + if (Z_LVAL_P(h_cpy)) { + zend_hash_del(&msg->hdrs, "Content-Length", sizeof("Content-Length")); + } + zval_ptr_dtor(&h_cpy); } } @@ -784,7 +792,7 @@ STATUS php_http_message_object_set_body(php_http_message_object_t *msg_obj, zval STATUS php_http_message_object_init_body_object(php_http_message_object_t *obj) { - TSRMLS_FETCH_FROM_CTX(obj); + TSRMLS_FETCH_FROM_CTX(obj->message->ts); php_http_message_body_addref(obj->message->body); return php_http_new(NULL, php_http_message_body_class_entry, (php_http_new_t) php_http_message_body_object_new_ex, NULL, obj->message->body, (void *) &obj->body TSRMLS_CC);