Index: modules/node/node.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/node/node.module,v
retrieving revision 1.967
diff -u -p -r1.967 node.module
--- modules/node/node.module	26 May 2008 17:12:55 -0000	1.967
+++ modules/node/node.module	12 Jun 2008 14:43:23 -0000
@@ -441,6 +441,12 @@ function node_teaser($body, $format = NU
  */
 function node_get_types($op = 'types', $node = NULL, $reset = FALSE) {
   static $_node_types, $_node_names;
+  
+  if (!$reset && !isset($_node_types)) {
+    if ($node_types_cache = cache_get('node_types', 'cache')) { 
+      list($_node_types, $_node_names) = $node_types_cache->data;
+    }
+  }
 
   if ($reset || !isset($_node_types)) {
     list($_node_types, $_node_names) = _node_types_build();
@@ -599,6 +605,8 @@ function _node_types_build() {
 
   asort($_node_names);
 
+  cache_set('node_types', array($_node_types, $_node_names), 'cache');
+  
   return array($_node_types, $_node_names);
 }
 
