diff options
-rw-r--r-- | REFLECTION | 2 | ||||
-rw-r--r-- | php-pecl-sync.spec | 21 | ||||
-rw-r--r-- | sync-build.patch | 55 |
3 files changed, 7 insertions, 71 deletions
@@ -1,4 +1,4 @@ -Extension [ <persistent> extension #143 sync version 1.0.0 ] { +Extension [ <persistent> extension #143 sync version 1.0.1 ] { - Classes [4] { Class [ <internal:sync> class SyncMutex ] { diff --git a/php-pecl-sync.spec b/php-pecl-sync.spec index 5d8e314..734dc16 100644 --- a/php-pecl-sync.spec +++ b/php-pecl-sync.spec @@ -21,15 +21,13 @@ Summary: Named and unnamed synchronization objects Name: %{?scl_prefix}php-pecl-%{pecl_name} -Version: 1.0.0 +Version: 1.0.1 Release: 1%{?dist}%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')} License: MIT Group: Development/Languages URL: http://pecl.php.net/package/%{pecl_name} Source0: http://pecl.php.net/get/%{pecl_name}-%{version}.tgz -Patch0: %{pecl_name}-build.patch - BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{?scl_prefix}php-devel > 5.3 BuildRequires: %{?scl_prefix}php-pear @@ -79,9 +77,6 @@ and Windows platforms. mv %{pecl_name}-%{version} NTS cd NTS - -%patch0 -p1 - # Sanity check, really often broken extver=$(sed -n '/#define PHP_SYNC_VERSION/{s/.* "//;s/".*$//;p}' php_sync.h) if test "x${extver}" != "x%{version}"; then @@ -168,14 +163,7 @@ export TEST_PHP_EXECUTABLE=%{__php} export TEST_PHP_ARGS="-n -d extension=$PWD/modules/%{pecl_name}.so" export NO_INTERACTION=1 export REPORT_EXIT_STATUS=1 -if ! %{__php} -n run-tests.php -then - for i in tests/*diff - do - cat $i - done - exit 1 -fi +%{__php} -n run-tests.php --show-diff %if %{with_zts} cd ../ZTS @@ -187,7 +175,7 @@ cd ../ZTS : Upstream test suite for ZTS extension export TEST_PHP_EXECUTABLE=%{_bindir}/zts-php export TEST_PHP_ARGS="-n -d extension=$PWD/modules/%{pecl_name}.so" -%{_bindir}/zts-php -n run-tests.php +%{_bindir}/zts-php -n run-tests.php --show-diff %endif @@ -211,5 +199,8 @@ rm -rf %{buildroot} %changelog +* Fri Jul 25 2014 Remi Collet <remi@fedoraproject.org> - 1.0.1-1 +- Update to 1.0.1 (stable) + * Tue Jul 8 2014 Remi Collet <remi@fedoraproject.org> - 1.0.0-1 - initial package, version 1.0.0 (stable)
\ No newline at end of file diff --git a/sync-build.patch b/sync-build.patch deleted file mode 100644 index 910c3f4..0000000 --- a/sync-build.patch +++ /dev/null @@ -1,55 +0,0 @@ -diff --git a/sync.c b/sync.c -index 016c636..f8344bd 100644 ---- a/sync.c -+++ b/sync.c -@@ -22,5 +22,10 @@ - #include "php_sync.h" - -+/* PHP_FE_END not define in php < 5.3.7 */ -+#ifndef PHP_FE_END -+#define PHP_FE_END {NULL, NULL, NULL} -+#endif -+ - /* {{{ sync_module_entry - */ - zend_module_entry sync_module_entry = { -diff --git a/config.m4 b/config.m4 -index a386835..877bb61 100644 ---- a/config.m4 -+++ b/config.m4 -@@ -23,6 +23,9 @@ if test "$PHP_SYNC" != "no"; then - AC_MSG_ERROR([sem_open() is not available on this platform]) - ]) - -+ PHP_ADD_LIBRARY(rt,,SYNC_SHARED_LIBADD) -+ PHP_SUBST(SYNC_SHARED_LIBADD) -+ - dnl # Finish defining the basic extension support. - AC_DEFINE(HAVE_SYNC, 1, [Whether you have synchronization object support]) - PHP_NEW_EXTENSION(sync, sync.c, $ext_shared) -diff --git a/sync.c b/sync.c -index 529133a..40fe075 100644 ---- a/sync.c -+++ b/sync.c -@@ -1120,11 +1120,17 @@ int sync_ReaderWriter_readunlock_internal(sync_ReaderWriter_object *obj) - if (!sync_WaitForSemaphore(obj->MxSemRSemMutex, INFINITE)) return 0; - - /* Release the semaphore. */ -- Result = sem_post(obj->MxSemRSemaphore); -- -- /* Update the event state. */ - sem_getvalue(obj->MxSemRSemaphore, &Val); -- if (Val == SEM_VALUE_MAX) sem_post(obj->MxSemRWaitEvent); -+ if (Val == SEM_VALUE_MAX) { -+ Result = 1; -+ sem_post(obj->MxSemRWaitEvent); -+ } else { -+ Result = sem_post(obj->MxSemRSemaphore); -+ -+ /* Update the event state. */ -+ sem_getvalue(obj->MxSemRSemaphore, &Val); -+ if (Val == SEM_VALUE_MAX) sem_post(obj->MxSemRWaitEvent); -+ } - - if (obj->MxReadLocks) obj->MxReadLocks--; - |