diff --git a/core/includes/menu.inc b/core/includes/menu.inc
old mode 100644
new mode 100755
index d719571..734bc0a
--- a/core/includes/menu.inc
+++ b/core/includes/menu.inc
@@ -896,17 +896,19 @@ function _menu_link_translate(&$item, $translate = FALSE) {
       $item['access'] = FALSE;
       return FALSE;
     }
+    if ($route = $item->getRoute()) {
+      $request = Request::create('/' . $item['path']);
+      $item['access'] = drupal_container()->get('access_manager')->check($route, $request);
+    }
+    // We always need to load objects where appropriate.
+    // Problems may arise if this step is skipped.
+    elseif (!empty($item['load_functions']) && !_menu_load_objects($item, $map)) {
+      // An error occurred loading an object.
+      $item['access'] = FALSE;
+      return FALSE;
+    }
     // menu_tree_check_access() may set this ahead of time for links to nodes.
     if (!isset($item['access'])) {
-      if ($route = $item->getRoute()) {
-        $request = Request::create('/' . $item['path']);
-        $item['access'] = drupal_container()->get('access_manager')->check($route, $request);
-      }
-      elseif (!empty($item['load_functions']) && !_menu_load_objects($item, $map)) {
-        // An error occurred loading an object.
-        $item['access'] = FALSE;
-        return FALSE;
-      }
       _menu_check_access($item, $map);
     }
     // For performance, don't localize a link the user can't access.
