aboutsummaryrefslogtreecommitdiffstats
path: root/testing/php7-solr/fix-zend_acc_public.patch
diff options
context:
space:
mode:
authorTBK <tbk@jjtc.dk>2018-03-30 02:43:25 +0200
committerAndy Postnikov <apostnikov@gmail.com>2018-03-30 03:53:57 +0300
commit297df098c09a0f72234b301eaafaf25a644a7330 (patch)
tree25369c4803fa75bdb75706c4a541563fa324dc66 /testing/php7-solr/fix-zend_acc_public.patch
parent4e22f77d51a99090eb7969921ca0ac9d6743b8b6 (diff)
downloadaports-297df098c09a0f72234b301eaafaf25a644a7330.tar.gz
aports-297df098c09a0f72234b301eaafaf25a644a7330.tar.bz2
aports-297df098c09a0f72234b301eaafaf25a644a7330.tar.xz
testing/php7-solr: modernize
Diffstat (limited to 'testing/php7-solr/fix-zend_acc_public.patch')
-rw-r--r--testing/php7-solr/fix-zend_acc_public.patch88
1 files changed, 88 insertions, 0 deletions
diff --git a/testing/php7-solr/fix-zend_acc_public.patch b/testing/php7-solr/fix-zend_acc_public.patch
new file mode 100644
index 0000000000..15c300383c
--- /dev/null
+++ b/testing/php7-solr/fix-zend_acc_public.patch
@@ -0,0 +1,88 @@
+From: Remi Collet <remi@php.net>
+Date: Fri, 23 Jun 2017 16:25:50 +0200
+Subject: Fix for 7.2: - ZEND_ACC_CLONE have been removed,
+ and was not used in previous versions - fix php_pcre_replace call
+
+---
+--- a/src/php7/php_solr.c
++++ b/src/php7/php_solr.c
+@@ -557,7 +557,7 @@ static zend_function_entry solr_document_methods[] = {
+ SOLR_CTOR(SolrDocument, __construct, SolrDocument__construct_args)
+ SOLR_DTOR(SolrDocument, __destruct, Solr_no_args)
+
+- PHP_ME(SolrDocument, __clone, NULL, ZEND_ACC_PUBLIC | ZEND_ACC_CLONE)
++ PHP_ME(SolrDocument, __clone, NULL, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrDocument, __set, SolrDocument_addField_args, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrDocument, __get, SolrDocument_getField_args, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrDocument, __isset, SolrDocument_fieldExists_args, ZEND_ACC_PUBLIC)
+@@ -600,7 +600,7 @@ static zend_function_entry solr_document_methods[] = {
+ static zend_function_entry solr_input_document_methods[] = {
+ SOLR_CTOR(SolrInputDocument, __construct, SolrInputDocument__construct_args)
+ SOLR_DTOR(SolrInputDocument, __destruct, Solr_no_args)
+- PHP_ME(SolrInputDocument, __clone, NULL, ZEND_ACC_PUBLIC | ZEND_ACC_CLONE)
++ PHP_ME(SolrInputDocument, __clone, NULL, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrInputDocument, __sleep, Solr_no_args, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrInputDocument, __wakeup, NULL, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrInputDocument, setBoost, SolrInputDocument_setBoost_args, ZEND_ACC_PUBLIC)
+@@ -633,7 +633,7 @@ static zend_function_entry solr_client_methods[] = {
+ SOLR_DTOR(SolrClient, __destruct, Solr_no_args)
+ PHP_ME(SolrClient, __sleep, Solr_no_args, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrClient, __wakeup, NULL, ZEND_ACC_PUBLIC)
+- PHP_ME(SolrClient, __clone, NULL, ZEND_ACC_PUBLIC | ZEND_ACC_CLONE)
++ PHP_ME(SolrClient, __clone, NULL, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrClient, getOptions, Solr_no_args, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrClient, getDebug, Solr_no_args, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrClient, setServlet, SolrClient_setServlet_args, ZEND_ACC_PUBLIC)
+@@ -710,7 +710,7 @@ static zend_function_entry solr_params_methods[] = {
+ PHP_ME(SolrParams, getParams, Solr_no_args, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrParams, getParam, SolrParams_getParam_args, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrParams, getPreparedParams, Solr_no_args, ZEND_ACC_PUBLIC)
+- PHP_ME(SolrParams, __clone, NULL, ZEND_ACC_PUBLIC | ZEND_ACC_CLONE)
++ PHP_ME(SolrParams, __clone, NULL, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrParams, serialize, NULL, ZEND_ACC_PUBLIC)
+ PHP_ME(SolrParams, unserialize, SolrParams_unserialize_args, ZEND_ACC_PUBLIC)
+ PHP_MALIAS(SolrParams, add, addParam, SolrParams_addParam_args, ZEND_ACC_PUBLIC)
+
+--- a/src/php7/solr_functions_helpers.c
++++ b/src/php7/solr_functions_helpers.c
+@@ -1389,19 +1389,28 @@ PHP_SOLR_API long solr_get_json_last_error(TSRMLS_D)
+ static inline int solr_pcre_replace_into_buffer(solr_string_t *buffer, char * search, char *replace)
+ {
+ zend_string *result;
+- zval replace_val;
+ int limit = -1;
+ int replace_count = -1;
+ zend_string *regex_str = zend_string_init(search, strlen(search), 0);
+ zend_string *subject_str = zend_string_init(buffer->str, buffer->len, 0);
++#if PHP_VERSION_ID >= 70200
++ zend_string *replace_str = zend_string_init(replace, strlen(replace), 0);
++#else
++ zval replace_val;
+ ZVAL_STRING(&replace_val, replace);
++#endif
++
+ result = php_pcre_replace(
+ regex_str,
+ subject_str,
+ buffer->str,
+ buffer->len,
++#if PHP_VERSION_ID >= 70200
++ replace_str,
++#else
+ &replace_val,
+ 0,
++#endif
+ limit,
+ &replace_count
+ );
+@@ -1409,7 +1418,11 @@ static inline int solr_pcre_replace_into_buffer(solr_string_t *buffer, char * se
+ solr_string_set_ex(buffer, (solr_char_t *)result->val, (size_t)result->len);
+ /* fprintf(stdout, "%s", buffer->str); */
+ efree(result);
++#if PHP_VERSION_ID >= 70200
++ zend_string_release(replace_str);
++#else
+ zval_ptr_dtor(&replace_val);
++#endif
+ zend_string_release(regex_str);
+ zend_string_release(subject_str);