X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=http_request_object.c;h=b40ef8992457e8a9833cf8e23c6324676aa4682c;hb=2eeaaf92d18d81751c5a52dcc7c1dbdfbcdfc28c;hp=40e36bc61586bdd986fe959e6bc16944958688e6;hpb=50343c32560e80c491911b107fab8217a35850eb;p=m6w6%2Fext-http diff --git a/http_request_object.c b/http_request_object.c index 40e36bc..b40ef89 100644 --- a/http_request_object.c +++ b/http_request_object.c @@ -325,7 +325,7 @@ zend_function_entry http_request_object_fe[] = { HTTP_REQUEST_ALIAS(methodUnregister, http_request_method_unregister) HTTP_REQUEST_ALIAS(methodName, http_request_method_name) HTTP_REQUEST_ALIAS(methodExists, http_request_method_exists) -#if HAVE_CURL_GETFORMDATA +#ifdef HAVE_CURL_GETFORMDATA HTTP_REQUEST_ALIAS(encodeBody, http_request_body_encode) #endif EMPTY_FUNCTION_ENTRY @@ -449,18 +449,16 @@ zend_object_value _http_request_object_new_ex(zend_class_entry *ce, CURL *ch, ht zend_object_value _http_request_object_clone_obj(zval *this_ptr TSRMLS_DC) { - zend_object *old_zo; zend_object_value new_ov; http_request_object *new_obj; getObject(http_request_object, old_obj); - old_zo = zend_objects_get_address(this_ptr TSRMLS_CC); - new_ov = http_request_object_new_ex(old_zo->ce, NULL, &new_obj); + new_ov = http_request_object_new_ex(old_obj->zo.ce, NULL, &new_obj); if (old_obj->request->ch) { http_curl_init_ex(curl_easy_duphandle(old_obj->request->ch), new_obj->request); } - zend_objects_clone_members(&new_obj->zo, new_ov, old_zo, Z_OBJ_HANDLE_P(this_ptr) TSRMLS_CC); + zend_objects_clone_members(&new_obj->zo, new_ov, &old_obj->zo, Z_OBJ_HANDLE_P(this_ptr) TSRMLS_CC); phpstr_append(&new_obj->request->conv.request, old_obj->request->conv.request.data, old_obj->request->conv.request.used); phpstr_append(&new_obj->request->conv.response, old_obj->request->conv.response.data, old_obj->request->conv.response.used); @@ -471,12 +469,8 @@ void _http_request_object_free(zend_object *object TSRMLS_DC) { http_request_object *o = (http_request_object *) object; - if (OBJ_PROP(o)) { - zend_hash_destroy(OBJ_PROP(o)); - FREE_HASHTABLE(OBJ_PROP(o)); - } http_request_free(&o->request); - efree(o); + freeObject(o); } #define http_request_object_check_request_content_type(t) _http_request_object_check_request_content_type((t) TSRMLS_CC)