diff --git a/similarterms.module b/similarterms.module
index 990a307..b78314f 100644
--- a/similarterms.module
+++ b/similarterms.module
@@ -190,10 +190,16 @@ function similarterms_list($vocid = 'all', $nid = NULL) {
     }
     $node_obj = node_load($nid);
     if ($vocid == 'all') {
-      $terms = array_keys(similarterms_taxonomy_node_get_terms($node_obj));
+      $getterms = similarterms_taxonomy_node_get_terms($node_obj);
+      if(isset($getterms)) {
+        $terms = array_keys($getterms);
+      }
     }
     else {
-      $terms = array_keys(similarterms_taxonomy_node_get_terms($node_obj, $vocid));
+      $getterms = similarterms_taxonomy_node_get_terms($node_obj, $vocid);
+      if(isset($getterms)) {
+        $terms = array_keys($getterms);
+      } 
     }
 
     // Filter out some terms
@@ -514,9 +520,11 @@ function similarterms_taxonomy_node_get_terms($node, $vid = NULL) {
   foreach ($fields as $field_name => $field) {
     if ($field['type'] == 'taxonomy_term_reference' && !empty($field['bundles']['node']) && in_array($node->type, $field['bundles']['node'])) {
       $node_fields = field_get_items('node', $node, $field['field_name']);
-      foreach ($node_fields as $item) {
-        if (($vid == NULL) || ($item['taxonomy_term']->vid == $vid)) {
-            $terms[$node->vid]['tid'][$item['tid']] = $item['taxonomy_term'];
+      if($node_fields) {
+        foreach ($node_fields as $item) {
+          if (($vid == NULL) || ($item['taxonomy_term']->vid == $vid)) {
+              $terms[$node->vid]['tid'][$item['tid']] = $item['taxonomy_term'];
+          }
         }
       }
     }
