summaryrefslogtreecommitdiff
path: root/includes/form.inc
diff options
context:
space:
mode:
Diffstat (limited to 'includes/form.inc')
-rw-r--r--includes/form.inc13
1 files changed, 10 insertions, 3 deletions
diff --git a/includes/form.inc b/includes/form.inc
index 6f3e6ab17..dbb57e2ad 100644
--- a/includes/form.inc
+++ b/includes/form.inc
@@ -257,11 +257,18 @@ function _form_builder($form) {
$form[$key]['#tree'] = (isset($form[$key]['#tree'])) ? $form[$key]['#tree'] : $form['#tree'];
if ($form[$key]['#tree']) {
- //continue tree
- $parents = (array) $form['#parents'];
- array_push($parents, $key);
+ if (!$form['#tree']) {
+ // begin tree
+ $parents = array($key);
+ }
+ else {
+ //continue tree
+ $parents = (array) $form['#parents'];
+ array_push($parents, $key);
+ }
}
else {
+ // no tree
$parents = array($key);
}