From: Felipe Pena Date: Sun, 1 Nov 2009 17:30:55 +0000 (+0000) Subject: - Fixed bug #50006 (Segfault caused by uksort()) [5_2 only] X-Git-Tag: php-5.3.2RC1~292 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=be32cb2268d3ea0223966ed2e7d8c4e8c8334254;p=php - Fixed bug #50006 (Segfault caused by uksort()) [5_2 only] --- diff --git a/ext/standard/tests/array/bug50006.phpt b/ext/standard/tests/array/bug50006.phpt new file mode 100644 index 0000000000..f03a002629 --- /dev/null +++ b/ext/standard/tests/array/bug50006.phpt @@ -0,0 +1,29 @@ +--TEST-- +Bug #50006 (Segfault caused by uksort()) +--FILE-- + 0, + 'bar-bazbazbaz-' => 0, + 'foo' => 0, +); +uksort($data, 'magic_sort_cmp'); +print_r($data); + +function magic_sort_cmp($a, $b) { + $a = substr($a, 1); + $b = substr($b, 1); + if (!$a) return $b ? -1 : 0; + if (!$b) return 1; + return magic_sort_cmp($a, $b); +} + +?> +--EXPECTF-- +Array +( + [foo] => 0 + [bar-bazbazbaz-] => 0 + [bar-bazbazbaz.] => 0 +)