summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <fedora@famillecollet.com>2014-09-08 19:09:35 +0200
committerRemi Collet <fedora@famillecollet.com>2014-09-08 19:09:35 +0200
commit812d34134c617c366eeda4256acc625b3368586d (patch)
treee9dfbb8c3f5536698ada19722012ac32f1f23981
parenta90a562fad0cc8a84db49778ac4c1682ec3672ff (diff)
php-pecl-ev: fix ZTS build
-rw-r--r--ev-leak.patch25
-rw-r--r--php-pecl-ev.spec12
2 files changed, 35 insertions, 2 deletions
diff --git a/ev-leak.patch b/ev-leak.patch
new file mode 100644
index 0000000..c013ed5
--- /dev/null
+++ b/ev-leak.patch
@@ -0,0 +1,25 @@
+From 904388b5cc122a3331120b73aaa987aa8b70f84d Mon Sep 17 00:00:00 2001
+From: Remi Collet <fedora@famillecollet.com>
+Date: Mon, 8 Sep 2014 18:54:42 +0200
+Subject: [PATCH] fix #10 segfault in ZTS test suite
+
+---
+ loop.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/loop.c b/loop.c
+index c180b7f..85c3f10 100644
+--- a/loop.c
++++ b/loop.c
+@@ -64,7 +64,7 @@ static void php_ev_loop_object_ctor(INTERNAL_FUNCTION_PARAMETERS, const zend_boo
+
+ /* Save return_value in MyG(default_loop) */
+ if (is_default_loop && !*default_loop_ptr_ptr) {
+- MAKE_STD_ZVAL(*default_loop_ptr_ptr);
++ ALLOC_INIT_ZVAL(*default_loop_ptr_ptr);
+ REPLACE_ZVAL_VALUE(default_loop_ptr_ptr, return_value, 1);
+ }
+ } else {
+--
+1.8.5.2
+
diff --git a/php-pecl-ev.spec b/php-pecl-ev.spec
index f235d2d..4770ea0 100644
--- a/php-pecl-ev.spec
+++ b/php-pecl-ev.spec
@@ -17,7 +17,7 @@
%global pecl_name ev
# failed test, so disabled for now
-%global with_zts 0
+%global with_zts 0%{?__ztsphp:1}
%if "%{php_version}" < "5.6"
# After sockets
@@ -30,12 +30,15 @@
Summary: Provides interface to libev library
Name: %{?scl_prefix}php-pecl-%{pecl_name}
Version: 0.2.11
-Release: 1%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}
+Release: 2%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}
License: PHP
Group: Development/Languages
URL: http://pecl.php.net/package/%{pecl_name}
Source0: http://pecl.php.net/get/%{pecl_name}-%{version}.tgz
+# https://bitbucket.org/osmanov/pecl-ev/pull-request/3
+Patch0: %{pecl_name}-leak.patch
+
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: %{?scl_prefix}php-devel > 5.4
BuildRequires: %{?scl_prefix}php-pear
@@ -89,6 +92,7 @@ mv %{pecl_name}-%{version} NTS
sed -e '/role="test"/d' -i package.xml
cd NTS
+%patch0 -p1 -b .leak
# Sanity check, really often broken
extver=$(sed -n '/define PHP_EV_VERSION/{s/.* "//;s/".*$//;p}' php_ev.h)
@@ -219,5 +223,9 @@ rm -rf %{buildroot}
%changelog
+* Mon Sep 8 2014 Remi Collet <rcollet@redhat.com> - 0.2.11-2
+- open https://bitbucket.org/osmanov/pecl-ev/pull-request/3
+- enable ZTS build
+
* Mon Sep 8 2014 Remi Collet <rcollet@redhat.com> - 0.2.11-1
- initial package, version 0.2.11 (stable) \ No newline at end of file