--- taxonomy.orig.inc	2008-03-29 03:05:44.000000000 +0100
+++ taxonomy.inc	2008-06-20 10:13:41.078125000 +0200
@@ -23,18 +23,16 @@
     drupal_add_js(drupal_get_path('module', 'hierarchical_select') .'/modules/taxonomy.js', 'module');
 
     $vid = $form['vid']['#value'];
-    $first_part = array_slice($form, 0, 8);
-    $second_part = array_slice($form, 8, 2);
-    $third_part = array_slice($form, 10);
-    $form = $first_part;
 
     // Hide Taxonomy's "multiple select" setting, create a similar setting
     // for Hierarchical Select.
     // Also see the comment in hierarchical_select_taxonomy_form_vocabulary_validate().
-    $form['hierarchical_select_multiple'] = $form['multiple'];
-    $form['hierarchical_select_multiple']['#default_value'] = variable_get("hierarchical_select_multiple_{$vid}", 0);
+    $frm = array();
+    $frm['hierarchical_select_multiple'] = $form['multiple'];
+    $frm['hierarchical_select_multiple']['#default_value'] = variable_get("hierarchical_select_multiple_{$vid}", 0);
     $form['multiple']['#type'] = 'hidden';
-    $form += $second_part;
+	//move the "custom checkbox" 'hierarchical_select_multiple' up, to original position
+	$form = array_merge_recursive(array_splice($form, 0, 8), $frm, $form);
 
     $form['hierarchical_select'] = array(
       '#tree' => TRUE,
@@ -174,10 +172,8 @@
       '#default_value' => variable_get("hierarchical_select_dropbox_limit_{$vid}", 0),
     );
 
-    $form['#submit']['taxonomy_form_vocabulary_submit'] = array(); // Make sure the original submit handler is still called.
     $form['#validate']['hierarchical_select_taxonomy_form_vocabulary_validate'] = array();
     $form['#submit']['hierarchical_select_taxonomy_form_vocabulary_submit'] = array();
-    $form += $third_part;
   }
 
   // Change the exposed filters of Views. Only affects hierarchical vocabulary
