]> granicus.if.org Git - php/commitdiff
Added test case for bug #21732
authorMoriyoshi Koizumi <moriyoshi@php.net>
Thu, 23 Jan 2003 18:22:55 +0000 (18:22 +0000)
committerMoriyoshi Koizumi <moriyoshi@php.net>
Thu, 23 Jan 2003 18:22:55 +0000 (18:22 +0000)
ext/pcre/tests/bug21732.phpt [new file with mode: 0644]

diff --git a/ext/pcre/tests/bug21732.phpt b/ext/pcre/tests/bug21732.phpt
new file mode 100644 (file)
index 0000000..5a5da59
--- /dev/null
@@ -0,0 +1,33 @@
+--TEST--
+Bug #21732 (preg_replace() segfaults with invalid parameters)
+--SKIPIF--
+<?php
+extension_loaded("pcre") or die("skip pcre extension is not available");
+?>
+--INI--
+error_reporting=0
+--FILE--
+<?php
+class foo {
+       function cb($param) {
+               var_dump($param);
+               return "yes!";
+       }
+}
+
+var_dump(preg_replace('', array(), ''));
+var_dump(preg_replace_callback("/(ab)(cd)(e)/", array(new foo(), "cb"), 'abcde'));
+?>
+--EXPECT--
+bool(false)
+array(4) {
+  [0]=>
+  string(5) "abcde"
+  [1]=>
+  string(2) "ab"
+  [2]=>
+  string(2) "cd"
+  [3]=>
+  string(1) "e"
+}
+string(4) "yes!"