Index: features.module
===================================================================
--- features.module	(revision 36462)
+++ features.module	(working copy)
@@ -232,6 +232,27 @@
  * Implemenation of hook_access()
  */
 function features_access($op, $node, $account) {
+  static $modules;
+
+  if (empty($modules)) {
+    if ($cache = cache_get('features_node_map', 'cache')) {
+      $modules = $cache->data;
+    }
+    else {
+      module_load_include('inc', 'features', 'features.export');
+      $modules = features_get_default_map('node');
+      cache_set('features_node_map', $modules, 'cache');
+    }
+  }
+
+  // Allow the feature that owns the node type to determine access permissions
+  $type = is_string($node) ? $node : (is_array($node) ? $node['type'] : $node->type);
+  $access_function = $modules[$type] . '_access';
+
+  if (function_exists($access_function)) {
+    $result = $access_function($op, $node, $account);
+
+    if (!is_null($result)) {
+      return $result;
+    }
+  }
+
   return node_content_access($op, $node, $account);
 }
 
