From 972558df3f54104c68229119f57c78b602e9910f Mon Sep 17 00:00:00 2001 From: Sean Harvey Date: Wed, 15 Oct 2008 23:25:55 +0000 Subject: [PATCH] BUGFIX If DropdownField->Field() lack of source checking before looping through it git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64320 467b73ca-7a2a-4603-9d3b-597d59a354a9 --- forms/DropdownField.php | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/forms/DropdownField.php b/forms/DropdownField.php index 7116bce3e..88aac844b 100755 --- a/forms/DropdownField.php +++ b/forms/DropdownField.php @@ -70,20 +70,22 @@ class DropdownField extends FormField { $options = ''; $source = $this->getSource(); - foreach($source as $value => $title) { - $selected = ($value == $this->value) ? 'selected' : null; - if($selected && $this->value != 0) { - $this->isSelected = true; + if($source) { + foreach($source as $value => $title) { + $selected = ($value == $this->value) ? 'selected' : null; + if($selected && $this->value != 0) { + $this->isSelected = true; + } + + $options .= $this->createTag( + 'option', + array( + 'selected' => $selected, + 'value' => $value + ), + $title + ); } - - $options .= $this->createTag( - 'option', - array( - 'selected' => $selected, - 'value' => $value - ), - $title - ); } $attributes = array(