Routing fixes for invalid null value matching and named argument handling (Ticket #3083, #3085, #3086, #3093). Thanks biesbjerg for all your help!

git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@5554 3807eeeb-6ff5-0310-8944-8be069107fe0
This commit is contained in:
nate 2007-08-20 13:09:11 +00:00
parent 6c1a81eeb8
commit bd194b51e5
5 changed files with 132 additions and 94 deletions

View file

@ -115,8 +115,7 @@ class Set extends Object {
*/
function filter($var, $isArray = false) {
if (is_array($var) && (!empty($var) || $isArray)) {
$set = new Set();
return array_filter($var, array(&$set, 'filter'));
return array_filter($var, array('Set', 'filter'));
} else {
if ($var === 0 || $var === '0' || !empty($var)) {
return true;
@ -531,7 +530,7 @@ class Set extends Object {
}
foreach ($val1 as $key => $val) {
if (isset($val2[$key]) && $val2[$key] != $val) {
if (array_key_exists($key, $val2) && $val2[$key] != $val) {
$out[$key] = $val;
} elseif (!array_key_exists($key, $val2)) {
$out[$key] = $val;
@ -540,7 +539,7 @@ class Set extends Object {
}
foreach ($val2 as $key => $val) {
if (!isset($out[$key])) {
if (!array_key_exists($key, $out)) {
$out[$key] = $val;
}
}