Index: includes/theme.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/theme.inc,v
retrieving revision 1.468
diff -u -r1.468 theme.inc
--- includes/theme.inc	3 Feb 2009 18:55:29 -0000	1.468
+++ includes/theme.inc	5 Feb 2009 01:52:53 -0000
@@ -2006,42 +2006,10 @@
   }
   // Clean up name so there are no underscores.
   $variables['template_files'][] = 'node-' . str_replace('_', '-', $node->type);
-  $variables['template_files'][] = 'node-' . $node->nid;
-
-  // Add $FIELD_NAME_rendered variables for fields.
-  drupal_function_exists('field_attach_preprocess');
+  $variables['template_files'][] = 'node-' . $node->nid;
+
+  // Add $FIELD_NAME_rendered variables for fields.
+  drupal_function_exists('field_attach_preprocess');
   $variables += field_attach_preprocess('node', $node);
 }
 
-/**
- * Process variables for block.tpl.php
- *
- * Prepare the values passed to the theme_block function to be passed
- * into a pluggable template engine. Uses block properties to generate a
- * series of template file suggestions. If none are found, the default
- * block.tpl.php is used.
- *
- * Most themes utilize their own copy of block.tpl.php. The default is located
- * inside "modules/system/block.tpl.php". Look in there for the full list of
- * variables.
- *
- * The $variables array contains the following arguments:
- * - $block
- *
- * @see block.tpl.php
- */
-function template_preprocess_block(&$variables) {
-  static $block_counter = array();
-  $variables['block'] = $variables['block']['#block'];
-  // All blocks get an independent counter for each region.
-  if (!isset($block_counter[$variables['block']->region])) {
-    $block_counter[$variables['block']->region] = 1;
-  }
-  // Same with zebra striping.
-  $variables['block_zebra'] = ($block_counter[$variables['block']->region] % 2) ? 'odd' : 'even';
-  $variables['block_id'] = $block_counter[$variables['block']->region]++;
-
-  $variables['template_files'][] = 'block-' . $variables['block']->region;
-  $variables['template_files'][] = 'block-' . $variables['block']->module;
-  $variables['template_files'][] = 'block-' . $variables['block']->module . '-' . $variables['block']->delta;
-}
Index: includes/common.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/common.inc,v
retrieving revision 1.864
diff -u -r1.864 common.inc
--- includes/common.inc	5 Feb 2009 01:21:16 -0000	1.864
+++ includes/common.inc	5 Feb 2009 01:52:40 -0000
@@ -3545,10 +3545,6 @@
       'arguments' => array('title' => NULL, 'content' => NULL, 'region' => 'main'),
       'template' => 'box',
     ),
-    'block' => array(
-      'arguments' => array('block' => NULL),
-      'template' => 'block',
-    ),
     'mark' => array(
       'arguments' => array('type' => MARK_NEW),
     ),
Index: modules/system/block.tpl.php
===================================================================
RCS file: modules/system/block.tpl.php
diff -N modules/system/block.tpl.php
--- modules/system/block.tpl.php	13 Oct 2008 12:31:43 -0000	1.7
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,36 +0,0 @@
-<?php
-// $Id: block.tpl.php,v 1.7 2008/10/13 12:31:43 dries Exp $
-
-/**
- * @file
- * Default theme implementation to display a block.
- *
- * Available variables:
- * - $block->subject: Block title.
- * - $block->content: Block content.
- * - $block->module: Module that generated the block.
- * - $block->delta: An ID for the block, unique within each module.
- * - $block->region: The block region embedding the current block.
- *
- * Helper variables:
- * - $block_zebra: Outputs 'odd' and 'even' dependent on each block region.
- * - $zebra: Same output as $block_zebra but independent of any block region.
- * - $block_id: Counter dependent on each block region.
- * - $id: Same output as $block_id but independent of any block region.
- * - $is_front: Flags true when presented in the front page.
- * - $logged_in: Flags true when the current user is a logged-in member.
- * - $is_admin: Flags true when the current user is an administrator.
- *
- * @see template_preprocess()
- * @see template_preprocess_block()
- */
-?>
-<div id="block-<?php print $block->module . '-' . $block->delta; ?>" class="block block-<?php print $block->module ?>">
-<?php if ($block->subject): ?>
-  <h2><?php print $block->subject ?></h2>
-<?php endif;?>
-
-  <div class="content">
-    <?php print $block->content ?>
-  </div>
-</div>
Index: modules/block/block.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/block/block.module,v
retrieving revision 1.321
diff -u -r1.321 block.module
--- modules/block/block.module	3 Feb 2009 12:30:14 -0000	1.321
+++ modules/block/block.module	5 Feb 2009 01:52:58 -0000
@@ -92,6 +92,10 @@
  */
 function block_theme() {
   return array(
+    'block' => array(
+      'arguments' => array('block' => NULL),
+      'template' => 'block',
+    ),  
     'block_admin_display_form' => array(
       'template' => 'block-admin-display-form',
       'file' => 'block.admin.inc',
@@ -631,3 +635,36 @@
 function block_flush_caches() {
   return array('cache_block');
 }
+
+/**
+ * Process variables for block.tpl.php
+ *
+ * Prepare the values passed to the theme_block function to be passed
+ * into a pluggable template engine. Uses block properties to generate a
+ * series of template file suggestions. If none are found, the default
+ * block.tpl.php is used.
+ *
+ * Most themes utilize their own copy of block.tpl.php. The default is located
+ * inside "modules/block/block.tpl.php". Look in there for the full list of
+ * variables.
+ *
+ * The $variables array contains the following arguments:
+ * - $block
+ *
+ * @see block.tpl.php
+ */
+function template_preprocess_block(&$variables) {
+  static $block_counter = array();
+  $variables['block'] = $variables['block']['#block'];
+  // All blocks get an independent counter for each region.
+  if (!isset($block_counter[$variables['block']->region])) {
+    $block_counter[$variables['block']->region] = 1;
+  }
+  // Same with zebra striping.
+  $variables['block_zebra'] = ($block_counter[$variables['block']->region] % 2) ? 'odd' : 'even';
+  $variables['block_id'] = $block_counter[$variables['block']->region]++;
+
+  $variables['template_files'][] = 'block-' . $variables['block']->region;
+  $variables['template_files'][] = 'block-' . $variables['block']->module;
+  $variables['template_files'][] = 'block-' . $variables['block']->module . '-' . $variables['block']->delta;
+}
\ No newline at end of file
Index: modules/block/block.tpl.php
===================================================================
RCS file: modules/block/block.tpl.php
diff -N modules/block/block.tpl.php
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ modules/block/block.tpl.php	1 Jan 1970 00:00:00 -0000
@@ -0,0 +1,36 @@
+<?php
+// $Id: block.tpl.php,v 1.7 2008/10/13 12:31:43 dries Exp $
+
+/**
+ * @file
+ * Default theme implementation to display a block.
+ *
+ * Available variables:
+ * - $block->subject: Block title.
+ * - $block->content: Block content.
+ * - $block->module: Module that generated the block.
+ * - $block->delta: An ID for the block, unique within each module.
+ * - $block->region: The block region embedding the current block.
+ *
+ * Helper variables:
+ * - $block_zebra: Outputs 'odd' and 'even' dependent on each block region.
+ * - $zebra: Same output as $block_zebra but independent of any block region.
+ * - $block_id: Counter dependent on each block region.
+ * - $id: Same output as $block_id but independent of any block region.
+ * - $is_front: Flags true when presented in the front page.
+ * - $logged_in: Flags true when the current user is a logged-in member.
+ * - $is_admin: Flags true when the current user is an administrator.
+ *
+ * @see template_preprocess()
+ * @see template_preprocess_block()
+ */
+?>
+<div id="block-<?php print $block->module . '-' . $block->delta; ?>" class="block block-<?php print $block->module ?>">
+<?php if ($block->subject): ?>
+  <h2><?php print $block->subject ?></h2>
+<?php endif;?>
+
+  <div class="content">
+    <?php print $block->content ?>
+  </div>
+</div>
