]> granicus.if.org Git - php/commitdiff
Revert "Fix bug #67064 in a BC safe way"
authorBob Weinand <bobwei9@hotmail.com>
Wed, 30 Jul 2014 15:18:05 +0000 (17:18 +0200)
committerBob Weinand <bobwei9@hotmail.com>
Wed, 30 Jul 2014 15:18:05 +0000 (17:18 +0200)
This reverts commit 1a4a9eede59b853f11e8e8b965e5f715f53da8f7.

Conflicts:
ext/standard/array.c
ext/standard/tests/array/bug67064.phpt

NEWS
ext/standard/array.c
ext/standard/tests/array/bug67064.phpt [deleted file]

diff --git a/NEWS b/NEWS
index 70338ee7503ec909ab19004e27ddd780be205cde..ba5882767bae69d6e347581814daac23fb063fda 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -3,7 +3,10 @@ PHP                                                                        NEWS
 ?? ??? 2014, PHP 5.6.0 Release Candidate 4
 
 - Core:
-  . Fixed bug #67693 (incorrect push to the empty array) (Tjerk)
+  . Fixed bug #67693 (incorrect push to the empty array). (Tjerk)
+
+ - SPL:
+  . Revert fix for bug #67064 (BC issues). (Bob)
 
 31 Jul 2014, PHP 5.6.0 Release Candidate 3
 
index 2792b86f020d337c6ef774a5ad5721dcfca89723..cca2f2583cdacfbf2818f71ad85e65e1c9201e60 100644 (file)
@@ -333,10 +333,7 @@ PHP_FUNCTION(count)
 #ifdef HAVE_SPL
                        /* if not and the object implements Countable we call its count() method */
                        if (Z_OBJ_HT_P(array)->get_class_entry && instanceof_function(Z_OBJCE_P(array), spl_ce_Countable TSRMLS_CC)) {
-                               zval *mode_zv;
-                               MAKE_STD_ZVAL(mode_zv);
-                               ZVAL_LONG(mode_zv, mode);
-                               zend_call_method_with_1_params(&array, NULL, NULL, "count", &retval, mode_zv);
+                               zend_call_method_with_0_params(&array, NULL, NULL, "count", &retval);
                                if (retval) {
                                        convert_to_long_ex(&retval);
                                        RETVAL_LONG(Z_LVAL_P(retval));
diff --git a/ext/standard/tests/array/bug67064.phpt b/ext/standard/tests/array/bug67064.phpt
deleted file mode 100644 (file)
index 2818516..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
---TEST--
-Bug #67064 (Countable interface prevents using 2nd parameter ($mode) of count() function)
---FILE--
-<?php
-class Counter implements Countable {
-       public function count($mode = COUNT_NORMAL) {
-               var_dump($mode == COUNT_RECURSIVE);
-               return 1;
-       }
-}
-
-$counter = new Counter;
-var_dump(count($counter, COUNT_RECURSIVE));
-?>
---EXPECTF--
-bool(true)
-int(1)