summaryrefslogtreecommitdiff
path: root/ext/standard/tests/array
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2017-04-02 13:20:14 +0200
committerNikita Popov <nikita.ppv@gmail.com>2017-04-02 13:20:14 +0200
commit51b06aa86e6924420e55afebdc9bb229c1b96bbb (patch)
treec62fed90a6f7fb21aea27f9cb88217856762a8e6 /ext/standard/tests/array
parent8aa419c91c5a61d6dffd8e1240b0790264b2c683 (diff)
parentc8034514edadbafc4376f107e2a4ba52b7b17ff4 (diff)
downloadphp-git-51b06aa86e6924420e55afebdc9bb229c1b96bbb.tar.gz
Merge branch 'PHP-7.1'
Diffstat (limited to 'ext/standard/tests/array')
-rw-r--r--ext/standard/tests/array/bug74361.phpt11
-rw-r--r--ext/standard/tests/array/bug74361_2.phpt24
2 files changed, 35 insertions, 0 deletions
diff --git a/ext/standard/tests/array/bug74361.phpt b/ext/standard/tests/array/bug74361.phpt
new file mode 100644
index 0000000000..6e7459024c
--- /dev/null
+++ b/ext/standard/tests/array/bug74361.phpt
@@ -0,0 +1,11 @@
+--TEST--
+Bug #74361: Compaction in array_rand() violates COW
+--FILE--
+<?php
+
+$array = [4 => 4];
+var_dump(array_rand($array));
+
+?>
+--EXPECT--
+int(4)
diff --git a/ext/standard/tests/array/bug74361_2.phpt b/ext/standard/tests/array/bug74361_2.phpt
new file mode 100644
index 0000000000..4f4bdcf5a4
--- /dev/null
+++ b/ext/standard/tests/array/bug74361_2.phpt
@@ -0,0 +1,24 @@
+--TEST--
+Bug #74361: Compaction in array_rand() violates COW (variation)
+--FILE--
+<?php
+
+$array = range(0, 15);
+for ($i = 0; $i <= 8; $i++) {
+ unset($array[$i]);
+}
+
+foreach ($array as $x) {
+ var_dump($x);
+ array_rand($array, 1);
+}
+
+?>
+--EXPECT--
+int(9)
+int(10)
+int(11)
+int(12)
+int(13)
+int(14)
+int(15)