patch in our xmlrpc-php layer for fedora21
[plcapi.git] / php / xmlrpc / xmlrpc-epi-php.c
index 7e19c7e..c2dc4e0 100644 (file)
@@ -51,8 +51,6 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: xmlrpc-epi-php.c,v 1.37 2004/01/08 08:17:47 andi Exp $ */
-
 /**********************************************************************
 * BUGS:                                                               *
 *  - when calling a php user function, there appears to be no way to  *
 
 #define PHP_EXT_VERSION "0.51"
 
+/* ====================
+ * Thierry - Dec. 17 2009 
+ * patch for php - bug first triggered on f12 with php-5.3
+ * http://pecl.php.net/bugs/bug.php?id=14369
+ * http://remi.fedorapeople.org/ncurses-1.0.0-php53.patch
+ * I'm taking out the 'static' stuff as after pre-processing it appears to be part of the macro expansion already
+ */
+#if ZEND_MODULE_API_NO >= 20071006
+// No more defined with PHP 5.3.0
+       ZEND_BEGIN_ARG_INFO(first_arg_force_ref, 0)
+               ZEND_ARG_PASS_INFO(1)
+       ZEND_END_ARG_INFO();
+
+       ZEND_BEGIN_ARG_INFO(second_arg_force_ref, 0)
+               ZEND_ARG_PASS_INFO(0)
+               ZEND_ARG_PASS_INFO(1)
+       ZEND_END_ARG_INFO();
+#endif
+/* ==================== end patch */
+
+/* ====================
+ * Thierry - Jan. 30 2013 
+ * patch for php - issues first triggered on f18 with php-5.4
+ * https://bugs.php.net/bug.php?id=60016 
+ * https://bugs.php.net/bug.php?id=60016 
+ */
+#if ZEND_MODULE_API_NO >= 20100525
+// No more defined with PHP 5.4
+#define function_entry zend_function_entry
+#define pval zval
+#endif
+/* ==================== end patch */
+
+/* ====================
+ * Thierry - Jan. 2 2015 
+ * patch for php - issues first triggered on f21 with php-5.6
+ * somebody somehow seems to have undefined 
+ * the IS_CONSTANT_ARRAY constant
+ * 
+ * however I'd rather not change the code that runs 
+ * on older releases, so see for the ugly ifdef below
+ * 
+/* ==================== end patch */
+
+
+/* ========== additional notes
+ * in the process, I've also come across the following resources that might help 
+ * if/when zend_get_parameters_ex gets deprecated (only generates warnings for now)
+ *
+ * http://developers.evrsoft.com/docs/php/zend.arguments.deprecated-retrieval.shtml
+ * explains how the old (our) stuff works
+ *
+ * http://www.hospedajeydominios.com/mambo/documentacion-manual_php-pagina-zend_arguments_retrieval.html
+ * gives info on the new scheme
+ *
+ * I'm taking tha risk as the changes seem to mean major surgery ...
+ */
+
 /* You should tweak config.m4 so this symbol (or some else suitable)
        gets defined.  */
 
@@ -1408,7 +1464,10 @@ XMLRPC_VALUE_TYPE get_zval_xmlrpc_type(php_output_options* out, zval* value, zva
             type = xmlrpc_string;
             break;
          case IS_ARRAY:
+/* jan. 2 2015 - see note in file header */
+#ifdef IS_CONSTANT_ARRAY
          case IS_CONSTANT_ARRAY:
+#endif
             type = xmlrpc_vector;
             break;
          case IS_OBJECT: