File php-CVE-2016-5771.patch of Package php5.openSUSE_Leap_42.1_Update

Index: php-5.6.1/ext/spl/spl_array.c
===================================================================
--- php-5.6.1.orig/ext/spl/spl_array.c	2016-06-27 13:12:07.066724616 +0200
+++ php-5.6.1/ext/spl/spl_array.c	2016-06-27 13:16:16.638806366 +0200
@@ -840,6 +840,16 @@ static HashTable* spl_array_get_debug_in
 }
 /* }}} */
 
+static HashTable *spl_array_get_gc(zval *object, zval ***gc_data, int *gc_data_count TSRMLS_DC) /* {{{ */
+{
+       spl_array_object *intern = (spl_array_object*)zend_object_store_get_object(object TSRMLS_CC);
+
+       *gc_data = &intern->array;
+       *gc_data_count = 1;
+       return zend_std_get_properties(object);
+}
+/* }}} */
+
 static zval *spl_array_read_property(zval *object, zval *member, int type, const zend_literal *key TSRMLS_DC) /* {{{ */
 {
 	spl_array_object *intern = (spl_array_object*)zend_object_store_get_object(object TSRMLS_CC);
@@ -1969,6 +1979,7 @@ PHP_MINIT_FUNCTION(spl_array)
 
 	spl_handler_ArrayObject.get_properties = spl_array_get_properties;
 	spl_handler_ArrayObject.get_debug_info = spl_array_get_debug_info;
+	spl_handler_ArrayObject.get_gc = spl_array_get_gc;
 	spl_handler_ArrayObject.read_property = spl_array_read_property;
 	spl_handler_ArrayObject.write_property = spl_array_write_property;
 	spl_handler_ArrayObject.get_property_ptr_ptr = spl_array_get_property_ptr_ptr;
openSUSE Build Service is sponsored by