In Zend/Form.php, around line 1060:
if ((null === $options) || !is_array($options)) {
$options = array('prefixPath' => $prefixPaths);
} elseif (is_array($options)) {
if (array_key_exists('prefixPath', $options)) {
$options['prefixPath'] = array_merge($prefixPaths, $options['prefixPath']);
$options['prefixPath'] = $prefixPaths;
}
}
should be:
if ((null === $options) || !is_array($options)) {
$options = array('prefixPath' => $prefixPaths);
} elseif (is_array($options)) {
if (array_key_exists('prefixPath', $options)) {
$options['prefixPath'] = array_merge($prefixPaths, $options['prefixPath']);
} else {
$options['prefixPath'] = $prefixPaths;
}
}
Otherwise, custom form element decorators won't be found when using addElementPrefixPath.