diff options
author | Remi Collet <remi@remirepo.net> | 2019-12-16 08:15:31 +0100 |
---|---|---|
committer | Remi Collet <remi@remirepo.net> | 2019-12-16 08:15:31 +0100 |
commit | deaf1df90d9cbe228c4ecda8106155f78abfc026 (patch) | |
tree | 7fc4f83caa552bf0856b84b94a20ac67dbdc5f99 | |
parent | d8ef5cfbb92ce2ccbf4dc01276bd7f74ba040e03 (diff) |
-rw-r--r-- | .gitignore | 8 | ||||
-rw-r--r-- | 3_01.txt | 68 | ||||
-rw-r--r-- | PHPINFO | 6 | ||||
-rw-r--r-- | REFLECTION | 170 | ||||
-rw-r--r-- | php-pecl-svn.spec | 65 | ||||
-rw-r--r-- | svn-upstream.patch | 70 |
6 files changed, 122 insertions, 265 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fc9aa8c --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +clog +package-*.xml +*.tgz +*.tar.gz +*.tar.xz +*.tar.xz.asc +*.src.rpm +*/*rpm diff --git a/3_01.txt b/3_01.txt deleted file mode 100644 index 6059c80..0000000 --- a/3_01.txt +++ /dev/null @@ -1,68 +0,0 @@ --------------------------------------------------------------------- - The PHP License, version 3.01 -Copyright (c) 1999 - 2014 The PHP Group. All rights reserved. --------------------------------------------------------------------- - -Redistribution and use in source and binary forms, with or without -modification, is permitted provided that the following conditions -are met: - - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in - the documentation and/or other materials provided with the - distribution. - - 3. The name "PHP" must not be used to endorse or promote products - derived from this software without prior written permission. For - written permission, please contact group@php.net. - - 4. Products derived from this software may not be called "PHP", nor - may "PHP" appear in their name, without prior written permission - from group@php.net. You may indicate that your software works in - conjunction with PHP by saying "Foo for PHP" instead of calling - it "PHP Foo" or "phpfoo" - - 5. The PHP Group may publish revised and/or new versions of the - license from time to time. Each version will be given a - distinguishing version number. - Once covered code has been published under a particular version - of the license, you may always continue to use it under the terms - of that version. You may also choose to use such covered code - under the terms of any subsequent version of the license - published by the PHP Group. No one other than the PHP Group has - the right to modify the terms applicable to covered code created - under this License. - - 6. Redistributions of any form whatsoever must retain the following - acknowledgment: - "This product includes PHP software, freely available from - <http://www.php.net/software/>". - -THIS SOFTWARE IS PROVIDED BY THE PHP DEVELOPMENT TEAM ``AS IS'' AND -ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE PHP -DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED -OF THE POSSIBILITY OF SUCH DAMAGE. - --------------------------------------------------------------------- - -This software consists of voluntary contributions made by many -individuals on behalf of the PHP Group. - -The PHP Group can be contacted via Email at group@php.net. - -For more information on the PHP Group and the PHP project, -please see <http://www.php.net>. - -PHP includes the Zend Engine, freely available at -<http://www.zend.com>. @@ -0,0 +1,6 @@ + +svn + +svn support => enabled +svn client version => 1.12.2 +svn extension version => 2.0.3 @@ -1,4 +1,4 @@ -Extension [ <persistent> extension #165 svn version 1.0.3 ] { +Extension [ <persistent> extension #93 svn version 2.0.3 ] { - Constants [60] { Constant [ string SVN_AUTH_PARAM_DEFAULT_USERNAME ] { svn:auth:username } @@ -19,48 +19,48 @@ Extension [ <persistent> extension #165 svn version 1.0.3 ] { Constant [ string SVN_PROP_REVISION_ORIG_DATE ] { svn:original-date } Constant [ string SVN_PROP_REVISION_AUTHOR ] { svn:author } Constant [ string SVN_PROP_REVISION_LOG ] { svn:log } - Constant [ integer SVN_REVISION_INITIAL ] { 1 } - Constant [ integer SVN_REVISION_HEAD ] { -1 } - Constant [ integer SVN_REVISION_BASE ] { -2 } - Constant [ integer SVN_REVISION_COMMITTED ] { -3 } - Constant [ integer SVN_REVISION_PREV ] { -4 } - Constant [ integer SVN_REVISION_UNSPECIFIED ] { -5 } - Constant [ integer SVN_NON_RECURSIVE ] { 1 } - Constant [ integer SVN_DISCOVER_CHANGED_PATHS ] { 2 } - Constant [ integer SVN_OMIT_MESSAGES ] { 4 } - Constant [ integer SVN_STOP_ON_COPY ] { 8 } - Constant [ integer SVN_ALL ] { 16 } - Constant [ integer SVN_SHOW_UPDATES ] { 32 } - Constant [ integer SVN_NO_IGNORE ] { 64 } - Constant [ integer SVN_IGNORE_EXTERNALS ] { 128 } - Constant [ integer SVN_DEPTH_UNKNOWN ] { -2 } - Constant [ integer SVN_DEPTH_EXCLUDE ] { -1 } - Constant [ integer SVN_DEPTH_EMPTY ] { 0 } - Constant [ integer SVN_DEPTH_FILES ] { 1 } - Constant [ integer SVN_DEPTH_IMMEDIATES ] { 2 } - Constant [ integer SVN_DEPTH_INFINITY ] { 3 } - Constant [ integer SVN_WC_STATUS_NONE ] { 1 } - Constant [ integer SVN_WC_STATUS_UNVERSIONED ] { 2 } - Constant [ integer SVN_WC_STATUS_NORMAL ] { 3 } - Constant [ integer SVN_WC_STATUS_ADDED ] { 4 } - Constant [ integer SVN_WC_STATUS_MISSING ] { 5 } - Constant [ integer SVN_WC_STATUS_DELETED ] { 6 } - Constant [ integer SVN_WC_STATUS_REPLACED ] { 7 } - Constant [ integer SVN_WC_STATUS_MODIFIED ] { 8 } - Constant [ integer SVN_WC_STATUS_MERGED ] { 9 } - Constant [ integer SVN_WC_STATUS_CONFLICTED ] { 10 } - Constant [ integer SVN_WC_STATUS_IGNORED ] { 11 } - Constant [ integer SVN_WC_STATUS_OBSTRUCTED ] { 12 } - Constant [ integer SVN_WC_STATUS_EXTERNAL ] { 13 } - Constant [ integer SVN_WC_STATUS_INCOMPLETE ] { 14 } - Constant [ integer SVN_NODE_NONE ] { 0 } - Constant [ integer SVN_NODE_FILE ] { 1 } - Constant [ integer SVN_NODE_DIR ] { 2 } - Constant [ integer SVN_NODE_UNKNOWN ] { 3 } - Constant [ integer SVN_WC_SCHEDULE_NORMAL ] { 0 } - Constant [ integer SVN_WC_SCHEDULE_ADD ] { 1 } - Constant [ integer SVN_WC_SCHEDULE_DELETE ] { 2 } - Constant [ integer SVN_WC_SCHEDULE_REPLACE ] { 3 } + Constant [ int SVN_REVISION_INITIAL ] { 1 } + Constant [ int SVN_REVISION_HEAD ] { -1 } + Constant [ int SVN_REVISION_BASE ] { -2 } + Constant [ int SVN_REVISION_COMMITTED ] { -3 } + Constant [ int SVN_REVISION_PREV ] { -4 } + Constant [ int SVN_REVISION_UNSPECIFIED ] { -5 } + Constant [ int SVN_NON_RECURSIVE ] { 1 } + Constant [ int SVN_DISCOVER_CHANGED_PATHS ] { 2 } + Constant [ int SVN_OMIT_MESSAGES ] { 4 } + Constant [ int SVN_STOP_ON_COPY ] { 8 } + Constant [ int SVN_ALL ] { 16 } + Constant [ int SVN_SHOW_UPDATES ] { 32 } + Constant [ int SVN_NO_IGNORE ] { 64 } + Constant [ int SVN_IGNORE_EXTERNALS ] { 128 } + Constant [ int SVN_DEPTH_UNKNOWN ] { -2 } + Constant [ int SVN_DEPTH_EXCLUDE ] { -1 } + Constant [ int SVN_DEPTH_EMPTY ] { 0 } + Constant [ int SVN_DEPTH_FILES ] { 1 } + Constant [ int SVN_DEPTH_IMMEDIATES ] { 2 } + Constant [ int SVN_DEPTH_INFINITY ] { 3 } + Constant [ int SVN_WC_STATUS_NONE ] { 1 } + Constant [ int SVN_WC_STATUS_UNVERSIONED ] { 2 } + Constant [ int SVN_WC_STATUS_NORMAL ] { 3 } + Constant [ int SVN_WC_STATUS_ADDED ] { 4 } + Constant [ int SVN_WC_STATUS_MISSING ] { 5 } + Constant [ int SVN_WC_STATUS_DELETED ] { 6 } + Constant [ int SVN_WC_STATUS_REPLACED ] { 7 } + Constant [ int SVN_WC_STATUS_MODIFIED ] { 8 } + Constant [ int SVN_WC_STATUS_MERGED ] { 9 } + Constant [ int SVN_WC_STATUS_CONFLICTED ] { 10 } + Constant [ int SVN_WC_STATUS_IGNORED ] { 11 } + Constant [ int SVN_WC_STATUS_OBSTRUCTED ] { 12 } + Constant [ int SVN_WC_STATUS_EXTERNAL ] { 13 } + Constant [ int SVN_WC_STATUS_INCOMPLETE ] { 14 } + Constant [ int SVN_NODE_NONE ] { 0 } + Constant [ int SVN_NODE_FILE ] { 1 } + Constant [ int SVN_NODE_DIR ] { 2 } + Constant [ int SVN_NODE_UNKNOWN ] { 3 } + Constant [ int SVN_WC_SCHEDULE_NORMAL ] { 0 } + Constant [ int SVN_WC_SCHEDULE_ADD ] { 1 } + Constant [ int SVN_WC_SCHEDULE_DELETE ] { 2 } + Constant [ int SVN_WC_SCHEDULE_REPLACE ] { 3 } } - Functions { @@ -202,26 +202,26 @@ Extension [ <persistent> extension #165 svn version 1.0.3 ] { Class [ <internal:svn> class Svn ] { - Constants [20] { - Constant [ integer NON_RECURSIVE ] { 1 } - Constant [ integer DISCOVER_CHANGED_PATHS ] { 2 } - Constant [ integer OMIT_MESSAGES ] { 4 } - Constant [ integer STOP_ON_COPY ] { 8 } - Constant [ integer ALL ] { 16 } - Constant [ integer SHOW_UPDATES ] { 32 } - Constant [ integer NO_IGNORE ] { 64 } - Constant [ integer IGNORE_EXTERNALS ] { 128 } - Constant [ integer INITIAL ] { 1 } - Constant [ integer HEAD ] { -1 } - Constant [ integer BASE ] { -2 } - Constant [ integer COMMITTED ] { -3 } - Constant [ integer PREV ] { -4 } - Constant [ integer UNSPECIFIED ] { -5 } - Constant [ integer DEPTH_UNKNOWN ] { -2 } - Constant [ integer DEPTH_EXCLUDE ] { -1 } - Constant [ integer DEPTH_EMPTY ] { 0 } - Constant [ integer DEPTH_FILES ] { 1 } - Constant [ integer DEPTH_IMMEDIATES ] { 2 } - Constant [ integer DEPTH_INFINITY ] { 3 } + Constant [ public int NON_RECURSIVE ] { 1 } + Constant [ public int DISCOVER_CHANGED_PATHS ] { 2 } + Constant [ public int OMIT_MESSAGES ] { 4 } + Constant [ public int STOP_ON_COPY ] { 8 } + Constant [ public int ALL ] { 16 } + Constant [ public int SHOW_UPDATES ] { 32 } + Constant [ public int NO_IGNORE ] { 64 } + Constant [ public int IGNORE_EXTERNALS ] { 128 } + Constant [ public int INITIAL ] { 1 } + Constant [ public int HEAD ] { -1 } + Constant [ public int BASE ] { -2 } + Constant [ public int COMMITTED ] { -3 } + Constant [ public int PREV ] { -4 } + Constant [ public int UNSPECIFIED ] { -5 } + Constant [ public int DEPTH_UNKNOWN ] { -2 } + Constant [ public int DEPTH_EXCLUDE ] { -1 } + Constant [ public int DEPTH_EMPTY ] { 0 } + Constant [ public int DEPTH_FILES ] { 1 } + Constant [ public int DEPTH_IMMEDIATES ] { 2 } + Constant [ public int DEPTH_INFINITY ] { 3 } } - Static properties [0] { @@ -365,20 +365,20 @@ Extension [ <persistent> extension #165 svn version 1.0.3 ] { Class [ <internal:svn> class SvnWc ] { - Constants [14] { - Constant [ integer NONE ] { 1 } - Constant [ integer UNVERSIONED ] { 2 } - Constant [ integer NORMAL ] { 3 } - Constant [ integer ADDED ] { 4 } - Constant [ integer MISSING ] { 5 } - Constant [ integer DELETED ] { 6 } - Constant [ integer REPLACED ] { 7 } - Constant [ integer MODIFIED ] { 8 } - Constant [ integer MERGED ] { 9 } - Constant [ integer CONFLICTED ] { 10 } - Constant [ integer IGNORED ] { 11 } - Constant [ integer OBSTRUCTED ] { 12 } - Constant [ integer EXTERNAL ] { 13 } - Constant [ integer INCOMPLETE ] { 14 } + Constant [ public int NONE ] { 1 } + Constant [ public int UNVERSIONED ] { 2 } + Constant [ public int NORMAL ] { 3 } + Constant [ public int ADDED ] { 4 } + Constant [ public int MISSING ] { 5 } + Constant [ public int DELETED ] { 6 } + Constant [ public int REPLACED ] { 7 } + Constant [ public int MODIFIED ] { 8 } + Constant [ public int MERGED ] { 9 } + Constant [ public int CONFLICTED ] { 10 } + Constant [ public int IGNORED ] { 11 } + Constant [ public int OBSTRUCTED ] { 12 } + Constant [ public int EXTERNAL ] { 13 } + Constant [ public int INCOMPLETE ] { 14 } } - Static properties [0] { @@ -397,10 +397,10 @@ Extension [ <persistent> extension #165 svn version 1.0.3 ] { Class [ <internal:svn> class SvnWcSchedule ] { - Constants [4] { - Constant [ integer NORMAL ] { 0 } - Constant [ integer ADD ] { 1 } - Constant [ integer DELETE ] { 2 } - Constant [ integer REPLACE ] { 3 } + Constant [ public int NORMAL ] { 0 } + Constant [ public int ADD ] { 1 } + Constant [ public int DELETE ] { 2 } + Constant [ public int REPLACE ] { 3 } } - Static properties [0] { @@ -419,10 +419,10 @@ Extension [ <persistent> extension #165 svn version 1.0.3 ] { Class [ <internal:svn> class SvnNode ] { - Constants [4] { - Constant [ integer NONE ] { 0 } - Constant [ integer FILE ] { 1 } - Constant [ integer DIR ] { 2 } - Constant [ integer UNKNOWN ] { 3 } + Constant [ public int NONE ] { 0 } + Constant [ public int FILE ] { 1 } + Constant [ public int DIR ] { 2 } + Constant [ public int UNKNOWN ] { 3 } } - Static properties [0] { diff --git a/php-pecl-svn.spec b/php-pecl-svn.spec index 619e9de..70d34bf 100644 --- a/php-pecl-svn.spec +++ b/php-pecl-svn.spec @@ -1,48 +1,34 @@ # remirepo spec file for php-pecl-svn # -# Copyright (c) 2016-2017 Remi Collet +# Copyright (c) 2016-2019 Remi Collet # License: CC-BY-SA # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # %if 0%{?scl:1} -%if "%{scl}" == "rh-php56" -%global sub_prefix more-php56- -%else %global sub_prefix %{scl_prefix} -%endif %scl_package php-pecl-svn %endif %global with_zts 0%{!?_without_zts:%{?__ztsphp:1}} %global pecl_name svn -%if "%{php_version}" < "5.6" -%global ini_name %{pecl_name}.ini -%else -%global ini_name 40-%{pecl_name}.ini -%endif +%global ini_name 40-%{pecl_name}.ini Summary: PHP Bindings for the Subversion Revision control system Name: %{?sub_prefix}php-pecl-%{pecl_name} -Version: 1.0.3 +Version: 2.0.3 Release: 1%{?dist}%{!?scl:%{!?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 -# From headers -Source1: http://www.php.net/license/3_01.txt - -# http://svn.php.net/viewvc?view=revision&revision=339128 - for apr < 1.5 -# http://svn.php.net/viewvc?view=revision&revision=339129 - fix ZTS -Patch0: %{pecl_name}-upstream.patch -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{?scl_prefix}php-devel BuildRequires: %{?scl_prefix}php-pear BuildRequires: subversion-devel >= 1.3 BuildRequires: neon-devel +BuildRequires: apr-devel Requires: %{?scl_prefix}php(zend-abi) = %{php_zend_api} Requires: %{?scl_prefix}php(api) = %{php_core_api} @@ -60,21 +46,17 @@ Provides: %{?scl_prefix}php-pecl-%{pecl_name}%{?_isa} = %{version}-%{relea %if "%{?vendor}" == "Remi Collet" && 0%{!?scl:1} && 0%{?rhel} # Other third party repo stuff -Obsoletes: php53-pecl-%{pecl_name} <= %{version} -Obsoletes: php53u-pecl-%{pecl_name} <= %{version} -Obsoletes: php54-pecl-%{pecl_name} <= %{version} -Obsoletes: php54w-pecl-%{pecl_name} <= %{version} -%if "%{php_version}" > "5.5" -Obsoletes: php55u-pecl-%{pecl_name} <= %{version} -Obsoletes: php55w-pecl-%{pecl_name} <= %{version} +%if "%{php_version}" > "7.2" +Obsoletes: php72u-pecl-%{pecl_name} <= %{version} +Obsoletes: php72w-pecl-%{pecl_name} <= %{version} %endif -%if "%{php_version}" > "5.6" -Obsoletes: php56u-pecl-%{pecl_name} <= %{version} -Obsoletes: php56w-pecl-%{pecl_name} <= %{version} +%if "%{php_version}" > "7.3" +Obsoletes: php73-pecl-%{pecl_name} <= %{version} +Obsoletes: php73w-pecl-%{pecl_name} <= %{version} %endif -%if "%{php_version}" > "7.0" -Obsoletes: php70u-pecl-%{pecl_name} <= %{version} -Obsoletes: php70w-pecl-%{pecl_name} <= %{version} +%if "%{php_version}" > "7.4" +Obsoletes: php74-pecl-%{pecl_name} <= %{version} +Obsoletes: php74w-pecl-%{pecl_name} <= %{version} %endif %endif @@ -104,10 +86,6 @@ sed -e 's/role="test"/role="src"/' \ cd NTS -cp %{SOURCE1} LICENSE -%patch0 -p3 -b .up -chmod -x *.c *.h - # Sanity check, really often broken extver=$(sed -n '/#define PHP_SVN_VERSION/{s/.* "//;s/".*$//;p}' php_svn.h) if test "x${extver}" != "x%{version}%{?prever:-%{prever}}"; then @@ -129,6 +107,8 @@ EOF %build +%{?dtsenable} + peclbuild() { %configure \ --with-svn \ @@ -149,7 +129,7 @@ peclbuild %{_bindir}/zts-php-config %install -rm -rf %{buildroot} +%{?dtsenable} make -C NTS install INSTALL_ROOT=%{buildroot} @@ -173,7 +153,7 @@ done %{!?_licensedir:install -Dpm 644 NTS/LICENSE %{buildroot}%{pecl_docdir}/%{pecl_name}/LICENSE } \ -%if 0%{?fedora} < 24 +%if 0%{?fedora} < 24 && 0%{?rhel} < 8 # when pear installed alone, after us %triggerin -- %{?scl_prefix}php-pear if [ -x %{__pecl} ] ; then @@ -209,12 +189,7 @@ cd ../ZTS %endif -%clean -rm -rf %{buildroot} - - %files -%defattr(-,root,root,-) %{?_licensedir:%license NTS/LICENSE} %doc %{pecl_docdir}/%{pecl_name} %{pecl_xmldir}/%{name}.xml @@ -229,6 +204,12 @@ rm -rf %{buildroot} %changelog +* Mon Dec 16 2019 Remi Collet <remi@remirepo.net> - 2.0.3-1 +- update to 2.0.3 for PHP 7 + +* Mon Jan 21 2019 Remi Collet <remi@remirepo.net> - 1.0.3-2 +- cleanup for EL-8 + * Wed May 4 2016 Remi Collet <remi@fedoraproject.org> - 1.0.3-1 - initial package, version 1.0.3 (stable) - fix sources permission (upstream rev 339125) diff --git a/svn-upstream.patch b/svn-upstream.patch deleted file mode 100644 index e60571d..0000000 --- a/svn-upstream.patch +++ /dev/null @@ -1,70 +0,0 @@ ---- pecl/svn/trunk/svn.c 2016/05/04 06:34:26 339127 -+++ pecl/svn/trunk/svn.c 2016/05/04 07:26:03 339128 -@@ -977,6 +977,7 @@ - apr_pool_t *subpool; - svn_opt_revision_t peg_revision; - const char *true_path; -+ apr_hash_index_t *hi; - - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|lbb", - &repos_url, &repos_url_len, &revision.value.number, &recurse, &peg) == FAILURE) { -@@ -1021,7 +1022,7 @@ - - array_init(return_value); - -- for (apr_hash_index_t *hi = apr_hash_first(subpool, dirents); hi; hi = apr_hash_next(hi)) { -+ for (hi = apr_hash_first(subpool, dirents); hi; hi = apr_hash_next(hi)) { - const char *utf8_entryname; - svn_dirent_t *dirent; - apr_time_t now = apr_time_now(); -@@ -1031,9 +1032,10 @@ - char timestr[20]; - const char *utf8_timestr; - zval *row; -+ const char *key; - -- svn_utf_cstring_to_utf8 (&utf8_entryname, apr_hash_this_key(hi), subpool); -- dirent = apr_hash_this_val(hi); -+ apr_hash_this(hi, &key, NULL, &dirent); -+ svn_utf_cstring_to_utf8 (&utf8_entryname, key, subpool); - - /* svn_time_to_human_cstring gives us something *way* too long - to use for this, so we have to roll our own. We include -@@ -1101,6 +1103,7 @@ - { - struct php_svn_log_receiver_baton *baton = (struct php_svn_log_receiver_baton*) ibaton; - zval *row, *paths; -+ apr_hash_index_t *hi; - TSRMLS_FETCH(); - - if (rev == 0) { -@@ -1127,7 +1130,7 @@ - MAKE_STD_ZVAL(paths); - array_init(paths); - -- for (apr_hash_index_t *hi = apr_hash_first(pool, changed_paths); hi; hi = apr_hash_next(hi)) { -+ for (hi = apr_hash_first(pool, changed_paths); hi; hi = apr_hash_next(hi)) { - svn_log_changed_path_t *log_item; - zval *zpaths; - const char *path; -@@ -1135,8 +1138,7 @@ - MAKE_STD_ZVAL(zpaths); - array_init(zpaths); - -- path = apr_hash_this_key(hi); -- log_item = apr_hash_this_val(hi); -+ apr_hash_this(hi, &path, NULL, &log_item); - - add_assoc_stringl(zpaths, "action", &(log_item->action), 1,1); - add_assoc_string(zpaths, "path", path, 1); ---- pecl/svn/trunk/svn.c 2016/05/04 07:26:03 339128 -+++ pecl/svn/trunk/svn.c 2016/05/04 07:32:45 339129 -@@ -1154,7 +1154,7 @@ - add_assoc_zval(paths, path, zpaths); - } - -- zend_hash_sort(Z_ARRVAL_P(paths), zend_qsort, compare_keys_as_paths, 1); -+ zend_hash_sort(Z_ARRVAL_P(paths), zend_qsort, compare_keys_as_paths, 1 TSRMLS_CC); - add_assoc_zval(row,"paths",paths); - } - |