update package.xml
[m6w6/ext-http] / http_request_api.c
index bf21eba4ef4a3ec10bb09b9f4137ce8f5047ca4f..ad7f88e7c1ec60a5677a1c50c5c8067e0f067fe4 100644 (file)
@@ -316,8 +316,8 @@ PHP_HTTP_API void _http_request_dtor(http_request *request)
 {
        TSRMLS_FETCH_FROM_CTX(request->tsrm_ls);
        
-       http_curl_free(&request->ch);
        http_request_reset(request);
+       http_curl_free(&request->ch);
        
        phpstr_dtor(&request->_cache.cookies);
        zend_hash_destroy(&request->_cache.options);
@@ -555,7 +555,7 @@ PHP_HTTP_API STATUS _http_request_prepare(http_request *request, HashTable *opti
        if (!(storage = http_request_storage_get(request->ch))) {
                return FAILURE;
        }
-       
+       storage->errorbuffer[0] = '\0';
        /* set options */
        if (storage->url) {
                pefree(storage->url, 1);
@@ -772,14 +772,12 @@ PHP_HTTP_API STATUS _http_request_prepare(http_request *request, HashTable *opti
                        if (header_key.type == HASH_KEY_IS_STRING) {
                                char header[1024];
                                
-                               ZVAL_ADDREF(*header_val);
                                convert_to_string_ex(header_val);
                                if (!strcasecmp(header_key.str, "range")) {
                                        range_req = 1;
                                }
                                snprintf(header, sizeof(header), "%s: %s", header_key.str, Z_STRVAL_PP(header_val));
                                request->_cache.headers = curl_slist_append(request->_cache.headers, header);
-                               zval_ptr_dtor(header_val);
                        }
                }
        }