From 62ed6368b36c4963706ec5a3eb43e3e7a98730e2 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Mon, 11 Aug 2014 19:40:13 +0200 Subject: php-pecl-http: upstream pacth for php 5.3 --- pecl_http-git.patch | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++ php-pecl-http.spec | 9 ++++++- 2 files changed, 75 insertions(+), 1 deletion(-) create mode 100644 pecl_http-git.patch diff --git a/pecl_http-git.patch b/pecl_http-git.patch new file mode 100644 index 0000000..ad959d0 --- /dev/null +++ b/pecl_http-git.patch @@ -0,0 +1,67 @@ +From 371a7daee8ef02195769ebf846e0f5ca93093672 Mon Sep 17 00:00:00 2001 +From: Michael Wallner +Date: Mon, 11 Aug 2014 17:13:05 +0200 +Subject: [PATCH] fix PHP-5.3 compatibility + +--- + php_http_env_response.c | 4 ++++ + php_http_message.c | 13 +++++++++++++ + tests/params015.phpt | 2 +- + 3 files changed, 18 insertions(+), 1 deletion(-) + +diff --git a/php_http_env_response.c b/php_http_env_response.c +index 4d6ef03..c155dde 100644 +--- a/php_http_env_response.c ++++ b/php_http_env_response.c +@@ -1096,7 +1096,11 @@ static PHP_METHOD(HttpEnvResponse, __invoke) + + php_http_message_object_init_body_object(obj); + php_http_message_body_append(obj->message->body, ob_str, ob_len); ++#if PHP_VERSION_ID >= 50400 + RETURN_TRUE; ++#else ++ RETURN_EMPTY_STRING(); ++#endif + } + } + +diff --git a/php_http_message.c b/php_http_message.c +index cc04edc..88def26 100644 +--- a/php_http_message.c ++++ b/php_http_message.c +@@ -98,6 +98,19 @@ php_http_message_t *php_http_message_init_env(php_http_message_t *message, php_h + zval_dtor(&tval); + } + } ++#else ++ if (OG(ob_nesting_level)) { ++ if (php_get_output_start_filename(TSRMLS_C)) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not fetch response body, output has already been sent at %s:%d", php_get_output_start_filename(TSRMLS_C), php_get_output_start_lineno(TSRMLS_C)); ++ goto error; ++ } else if (SUCCESS != php_ob_get_buffer(&tval TSRMLS_CC)) { ++ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not fetch response body"); ++ goto error; ++ } else { ++ php_http_message_body_append(message->body, Z_STRVAL(tval), Z_STRLEN(tval)); ++ zval_dtor(&tval); ++ } ++ } + #endif + break; + +diff --git a/tests/params015.phpt b/tests/params015.phpt +index ad3948c..7501167 100644 +--- a/tests/params015.phpt ++++ b/tests/params015.phpt +@@ -7,7 +7,7 @@ include "skipif.inc"; + --FILE-- + ["filename"=>"foo.bar"]]); ++$p = new http\Params(array("attachment"=>array("filename"=>"foo.bar"))); + var_dump($p->params); + var_dump((string)$p); + ?> +-- +1.9.2 + diff --git a/php-pecl-http.spec b/php-pecl-http.spec index 5d369e4..ad7e87f 100644 --- a/php-pecl-http.spec +++ b/php-pecl-http.spec @@ -29,7 +29,7 @@ Name: %{?scl_prefix}php-pecl-http Version: 2.1.0 -Release: 0.3.RC2%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')} +Release: 0.4.RC2%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')} Summary: Extended HTTP support License: BSD @@ -40,6 +40,9 @@ Source0: http://pecl.php.net/get/%{proj_name}-%{version}%{?prever}.tgz # From http://www.php.net/manual/en/http.configuration.php Source1: %{proj_name}.ini +# Upstream patches +Patch0: %{proj_name}-git.patch + BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{?scl_prefix}php-devel >= 5.3.0 BuildRequires: %{?scl_prefix}php-hash @@ -170,6 +173,7 @@ These are the files needed to compile programs using HTTP extension. mv %{proj_name}-%{version}%{?prever} NTS cd NTS +%patch0 -p1 -b .git extver=$(sed -n '/#define PHP_PECL_HTTP_VERSION/{s/.* "//;s/".*$//;p}' php_http.h) if test "x${extver}" != "x%{version}%{?prever}"; then @@ -319,6 +323,9 @@ rm -rf %{buildroot} %changelog +* Mon Aug 11 2014 Remi Collet - 2.1.0-0.4.RC2 +- add upstream patch for PHP 5.3 + * Mon Aug 11 2014 Remi Collet - 2.1.0-0.3.RC2 - Update to 2.1.0RC2 -- cgit