diff --exclude-from=Zend_Form_diff_ignore --ignore-space-change -ruN library.original/Zend/Form/Decorator/FormElements.php library/Zend/Form/Decorator/FormElements.php --- library.original/Zend/Form/Decorator/FormElements.php 2010-01-06 03:05:09.000000000 +0100 +++ library/Zend/Form/Decorator/FormElements.php 2010-03-04 14:43:42.000000000 +0100 @@ -85,14 +85,14 @@ ->setTranslator($translator); if ($item instanceof Zend_Form_Element) { $item->setBelongsTo($belongsTo); - } elseif (!empty($belongsTo) && ($item instanceof Zend_Form)) { + } elseif (null !== $belongsTo && ($item instanceof Zend_Form)) { if ($item->isArray()) { $name = $this->mergeBelongsTo($belongsTo, $item->getElementsBelongTo()); $item->setElementsBelongTo($name, true); } else { $item->setElementsBelongTo($belongsTo, true); } - } elseif (!empty($belongsTo) && ($item instanceof Zend_Form_DisplayGroup)) { + } elseif (null !== $belongsTo && ($item instanceof Zend_Form_DisplayGroup)) { foreach ($item as $element) { $element->setBelongsTo($belongsTo); } diff --exclude-from=Zend_Form_diff_ignore --ignore-space-change -ruN library.original/Zend/Form.php library/Zend/Form.php --- library.original/Zend/Form.php 2010-01-06 03:05:09.000000000 +0100 +++ library/Zend/Form.php 2010-03-04 15:25:11.000000000 +0100 @@ -842,7 +842,7 @@ public function setName($name) { $name = $this->filterName($name); - if (('0' !== $name) && empty($name)) { + if ('' === $name) { require_once 'Zend/Form/Exception.php'; throw new Zend_Form_Exception('Invalid name provided; must contain only valid variable characters and be non-empty'); } @@ -1397,7 +1397,7 @@ { $origName = $this->getElementsBelongTo(); $name = $this->filterName($array, true); - if (empty($name)) { + if ('' === $name) { $name = null; } $this->_elementsBelongTo = $name; @@ -1449,7 +1449,7 @@ { if ((null === $this->_elementsBelongTo) && $this->isArray()) { $name = $this->getName(); - if (!empty($name)) { + if (null !== $name) { return $name; } } @@ -1742,7 +1742,7 @@ { if (null === $name) { $name = $group->getName(); - if (empty($name)) { + if ('' === $name) { require_once 'Zend/Form/Exception.php'; throw new Zend_Form_Exception('Invalid display group added; requires name'); } @@ -2293,7 +2293,7 @@ $arrayKeys = array(); foreach ($this->getSubForms() as $key => $subForm) { $array = $this->_getArrayName($subForm->getElementsBelongTo()); - if (!empty($array)) { + if (null !== $array) { if ($name == $array) { return $subForm->getMessages(null, true); } @@ -2320,7 +2320,7 @@ if (!empty($fMessages)) { if (array_key_exists($key, $arrayKeys)) { $fMessages = $this->_attachToArray($fMessages, $arrayKeys[$key]); - $messages = array_merge($messages, $fMessages); + $messages += $fMessages; // array union instead of array_merge to prevent shuffling numeric form names } else { $messages[$key] = $fMessages; }