Fix infinite loop when minYear/maxYear are not int.

Refs #2361
This commit is contained in:
mark_story 2011-12-11 22:03:39 -05:00
parent 205bfb506f
commit 8bb6f8803c
2 changed files with 5 additions and 10 deletions

View file

@ -5624,6 +5624,9 @@ class FormHelperTest extends CakeTestCase {
'/select',
);
$this->assertTags($result, $expected);
$result = $this->Form->year('published', array(), array(), array('empty' => false));
$this->assertContains('data[Contact][published][year]', $result);
}
/**

View file

@ -2461,17 +2461,9 @@ class FormHelper extends AppHelper {
case 'year':
$current = intval(date('Y'));
if (!isset($options['min'])) {
$min = $current - 20;
} else {
$min = $options['min'];
}
$min = !isset($options['min']) ? $current - 20 : (int)$options['min'];
$max = !isset($options['max']) ? $current + 20 : (int)$options['max'];
if (!isset($options['max'])) {
$max = $current + 20;
} else {
$max = $options['max'];
}
if ($min > $max) {
list($min, $max) = array($max, $min);
}