diff --git a/term_reference_tree.module b/term_reference_tree.module
index 91313ef..7f32d83 100644
--- a/term_reference_tree.module
+++ b/term_reference_tree.module
@@ -214,8 +214,8 @@ function _term_reference_tree_get_options(&$terms, &$allowed, $filter) {
 
   if (is_array($terms) && count($terms) > 0) {
     foreach($terms as $term) {
-      if (!$filter || (is_array($allowed) && $allowed[$term->tid])) {
-        $options[$term->tid] = entity_label('taxonomy_term', $term);
+      if (!$filter || is_array($allowed)) {
+        isset($term->tid) ? $options[$term->tid] = entity_label('taxonomy_term', $term) : $options[] = entity_label('taxonomy_term', $term);
         $options += _term_reference_tree_get_options($term->children, $allowed, $filter);
       }
     }
