diff --git a/sites/all/modules/contrib/references_dialog/references_dialog.dialog_widgets.inc b/sites/all/modules/contrib/references_dialog/references_dialog.dialog_widgets.inc
old mode 100644
new mode 100755
index 2185be4..3bcc7c3
--- a/sites/all/modules/contrib/references_dialog/references_dialog.dialog_widgets.inc
+++ b/sites/all/modules/contrib/references_dialog/references_dialog.dialog_widgets.inc
@@ -221,7 +221,17 @@ function references_dialog_entityreference_link_helper($entity_type, $bundle = N
   // We use entity_access here. We provide the bundle if this is a node type,
   // since node_access expects that to be passed to it as the entity when you
   // run node_access('create')
-  if (entity_access('create', $entity_type, $entity_type == 'node' ? $bundle : NULL) &&
+  if($entity_type == 'taxonomy_term' && function_exists('taxonomy_access_fix_access'))
+  {
+      $vocabulary = taxonomy_vocabulary_machine_name_load($bundle);
+      if(taxonomy_access_fix_access('add terms', $vocabulary)) {
+        $link = array(
+          'title' => t('Create @type', array('@type' => $label)),
+          'href' => 'admin/structure/taxonomy/' . $bundle . '/add',
+        );
+        return $link;
+      }
+  }elseif (entity_access('create', $entity_type, $entity_type == 'node' ? $bundle : NULL) &&
     $path = references_dialog_get_admin_path($entity_type, 'add', $bundle)) {
     $link = array(
       'title' => t('Create @type', array('@type' => $label)),
