diff --git a/core/modules/node/content_types.inc b/core/modules/node/content_types.inc
index 3c8812d..aa68ac3 100644
--- a/core/modules/node/content_types.inc
+++ b/core/modules/node/content_types.inc
@@ -13,40 +13,38 @@
  *
  * @see node_menu()
  */
-function node_overview_types() {
+function node_type_admin_overview() {
   $types = node_type_get_types();
-  $names = node_type_get_names();
   $field_ui = module_exists('field_ui');
   $header = array(t('Name'), t('Operations'));
   $rows = array();
 
-  foreach ($names as $key => $name) {
-    $type = $types[$key];
-    if (node_hook($type->type, 'form')) {
-      $row = array(theme('node_admin_overview', array('name' => $name, 'type' => $type)));
+  foreach ($types as $type => $data) {
+    if (node_hook($type, 'form')) {
+      $row = array(theme('node_type_admin_item', array('type' => $data)));
       $links['edit'] = array(
         'title' => t('edit'),
-        'href' => 'admin/structure/types/manage/' . $type->type,
+        'href' => 'admin/structure/types/manage/' . $type,
         'weight' => 0,
       );
 
       if ($field_ui) {
         $links['fields'] = array(
           'title' => t('manage fields'),
-          'href' => 'admin/structure/types/manage/' . $type->type . '/fields',
+          'href' => 'admin/structure/types/manage/' . $type . '/fields',
           'weight' => 5,
         );
         $links['display'] = array(
           'title' => t('manage display'),
-          'href' => 'admin/structure/types/manage/' . $type->type . '/display',
+          'href' => 'admin/structure/types/manage/' . $type . '/display',
           'weight' => 10,
         );
       }
 
-      if ($type->custom) {
+      if ($data->custom) {
         $links['delete'] = array(
           'title' => t('delete'),
-          'href' => 'admin/structure/types/manage/' . $type->type . '/delete',
+          'href' => 'admin/structure/types/manage/' . $type . '/delete',
           'weight' => 15,
         );
       }
@@ -77,20 +75,18 @@ function node_overview_types() {
  *
  * @param $variables
  *   An associative array containing:
- *   - name: The human-readable name of the content type.
- *   - type: An object containing the 'type' (machine name) and 'description' of
- *     the content type.
+ *   - type: An object containing 'type' (machine name), 'name' (human-readable
+ *     name) and 'description' of the content type.
  *
  * @return string
  *   An HTML-formatted string of the description for this node type.
  *
  * @ingroup themeable
  */
-function theme_node_admin_overview($variables) {
-  $name = $variables['name'];
+function theme_node_type_admin_item($variables) {
   $type = $variables['type'];
-
-  $output = check_plain($name);
+  
+  $output = check_plain($type->name);
   $output .= ' <small>' . t('(Machine name: @type)', array('@type' => $type->type)) . '</small>';
   $output .= '<div class="description">' . filter_xss_admin($type->description) . '</div>';
   return $output;
diff --git a/core/modules/node/node.module b/core/modules/node/node.module
index 30a6dd5..47e0f42 100644
--- a/core/modules/node/node.module
+++ b/core/modules/node/node.module
@@ -169,8 +169,9 @@ function node_theme() {
       'variables' => array('node' => NULL),
       'file' => 'node.pages.inc',
     ),
-    'node_admin_overview' => array(
-      'variables' => array('name' => NULL, 'type' => NULL),
+    'node_type_admin_item' => array(
+      'variables' => array('type' => NULL),
+      'file' => 'content_types.inc',
     ),
     'node_recent_block' => array(
       'variables' => array('nodes' => NULL),
@@ -1760,7 +1761,7 @@ function node_menu() {
   $items['admin/structure/types'] = array(
     'title' => 'Content types',
     'description' => 'Manage content types, including default status, front page promotion, comment settings, etc.',
-    'page callback' => 'node_overview_types',
+    'page callback' => 'node_type_admin_overview',
     'access arguments' => array('administer content types'),
     'file' => 'content_types.inc',
   );
