fixed another new 5_3 incompatibility (bug #15065)
authorMichael Wallner <mike@php.net>
Fri, 21 Nov 2008 10:14:34 +0000 (10:14 +0000)
committerMichael Wallner <mike@php.net>
Fri, 21 Nov 2008 10:14:34 +0000 (10:14 +0000)
missing.h
package2.xml
php_http_std_defs.h

index fa3eda8b4b09dfdc1a1d9aa44ed02c7b245970dd..d767f40c7cf2733a42576a131c6b2e0a6035530d 100644 (file)
--- a/missing.h
+++ b/missing.h
@@ -24,6 +24,7 @@
 #      define GLOBAL_ERROR_HANDLING EG(error_handling)
 #      define GLOBAL_EXCEPTION_CLASS EG(exception_class)
 #      define IS_CALLABLE(cb_zv, flags, cb_sp) zend_is_callable((cb_zv), (flags), (cb_sp) TSRMLS_CC)
+#      define HTTP_STATIC_ARG_INFO
 #else
 #      define HTTP_ZAPI_HASH_TSRMLS_CC
 #      define HTTP_ZAPI_HASH_TSRMLS_DC
@@ -31,6 +32,7 @@
 #      define GLOBAL_ERROR_HANDLING PG(error_handling)
 #      define GLOBAL_EXCEPTION_CLASS PG(exception_class)
 #      define IS_CALLABLE(cb_zv, flags, cb_sp) zend_is_callable((cb_zv), (flags), (cb_sp))
+#      define HTTP_STATIC_ARG_INFO static
 #endif
 
 #if (PHP_MAJOR_VERSION == 5) && (PHP_MINOR_VERSION == 0)
index cfdc087d02bf1cd6025ab2a8a6704e3911e8adff..4a0e384776fe515a53ab8b1a56e9c9e5947f1179 100644 (file)
@@ -28,9 +28,9 @@ support. Parallel requests are available for PHP 5 and greater.
   <email>mike@php.net</email>
   <active>yes</active>
  </lead>
- <date>2008-07-23</date>
+ <date>2008-10-20</date>
  <version>
-  <release>1.6.1</release>
+  <release>1.6.2</release>
   <api>1.6.0</api>
  </version>
  <stability>
@@ -39,9 +39,10 @@ support. Parallel requests are available for PHP 5 and greater.
  </stability>
  <license>BSD, revised</license>
  <notes><![CDATA[
-* Fixed bug #13362 (PHP-5.3 build)
-* Fixed bug #14168 (st->errorbuffer not cleared between uses of persistent handles)
-* Fixed bug #14218 (properties of class extending HttpMessage inaccessible)
+* Fixed PHP-5.3 API incompatibilities (including bug #15065)
+* Fixed memory corruption with headers and HttpRequest
+* Fixed crash in HttpMessage::unserialize()
+* Fixed bug #14826 (race condition in http_request_dtor)
 ]]></notes>
  <contents>
   <dir name="/">
index fdbfafa5e4e4b0a5915f6851e067ddae2a0e004f..19309330c932049619404660829781ad08fd7728 100644 (file)
@@ -266,8 +266,8 @@ typedef int STATUS;
 #define HTTP_E_QUERYSTRING                     13L
 
 #ifdef ZEND_ENGINE_2
-#      define HTTP_BEGIN_ARGS_EX(class, method, ret_ref, req_args)     static ZEND_BEGIN_ARG_INFO_EX(args_for_ ##class## _ ##method , 0, ret_ref, req_args)
-#      define HTTP_BEGIN_ARGS_AR(class, method, ret_ref, req_args)     static ZEND_BEGIN_ARG_INFO_EX(args_for_ ##class## _ ##method , 1, ret_ref, req_args)
+#      define HTTP_BEGIN_ARGS_EX(class, method, ret_ref, req_args)     HTTP_STATIC_ARG_INFO ZEND_BEGIN_ARG_INFO_EX(args_for_ ##class## _ ##method , 0, ret_ref, req_args)
+#      define HTTP_BEGIN_ARGS_AR(class, method, ret_ref, req_args)     HTTP_STATIC_ARG_INFO ZEND_BEGIN_ARG_INFO_EX(args_for_ ##class## _ ##method , 1, ret_ref, req_args)
 #      define HTTP_END_ARGS                                                                            }
 #      define HTTP_EMPTY_ARGS_EX(class, method, ret_ref)                       HTTP_BEGIN_ARGS_EX(class, method, ret_ref, 0) HTTP_END_ARGS
 #      define HTTP_ARGS(class, method)                                                         args_for_ ##class## _ ##method
@@ -284,20 +284,20 @@ typedef int STATUS;
 #ifdef HTTP_HAVE_CURL
 #      ifdef ZEND_ENGINE_2
 #              define HTTP_DECLARE_ARG_PASS_INFO() \
-                       static \
+                       HTTP_STATIC_ARG_INFO \
                        ZEND_BEGIN_ARG_INFO(http_arg_pass_ref_2, 0) \
                                ZEND_ARG_PASS_INFO(0) \
                                ZEND_ARG_PASS_INFO(1) \
                        ZEND_END_ARG_INFO(); \
  \
-                       static \
+                       HTTP_STATIC_ARG_INFO \
                        ZEND_BEGIN_ARG_INFO(http_arg_pass_ref_3, 0) \
                                ZEND_ARG_PASS_INFO(0) \
                                ZEND_ARG_PASS_INFO(0) \
                                ZEND_ARG_PASS_INFO(1) \
                        ZEND_END_ARG_INFO(); \
  \
-                       static \
+                       HTTP_STATIC_ARG_INFO \
                        ZEND_BEGIN_ARG_INFO(http_arg_pass_ref_4, 0) \
                                ZEND_ARG_PASS_INFO(0) \
                                ZEND_ARG_PASS_INFO(0) \
@@ -305,7 +305,7 @@ typedef int STATUS;
                                ZEND_ARG_PASS_INFO(1) \
                        ZEND_END_ARG_INFO(); \
  \
-                       static \
+                       HTTP_STATIC_ARG_INFO \
                        ZEND_BEGIN_ARG_INFO(http_arg_pass_ref_5, 0) \
                                ZEND_ARG_PASS_INFO(0) \
                                ZEND_ARG_PASS_INFO(0) \
@@ -324,13 +324,13 @@ typedef int STATUS;
 #else
 #      ifdef ZEND_ENGINE_2
 #              define HTTP_DECLARE_ARG_PASS_INFO() \
-                       static \
+                       HTTP_STATIC_ARG_INFO \
                        ZEND_BEGIN_ARG_INFO(http_arg_pass_ref_2, 0) \
                                ZEND_ARG_PASS_INFO(0) \
                                ZEND_ARG_PASS_INFO(1) \
                        ZEND_END_ARG_INFO(); \
 \
-                       static \
+                       HTTP_STATIC_ARG_INFO \
                        ZEND_BEGIN_ARG_INFO(http_arg_pass_ref_4, 0) \
                                ZEND_ARG_PASS_INFO(0) \
                                ZEND_ARG_PASS_INFO(0) \