? CHANGELOG.000
? CHANGELOG.001
? regioning8.patch
? regions.patch
Index: modules/system.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/system.module,v
retrieving revision 1.243
diff -u -r1.243 system.module
--- modules/system.module	19 Oct 2005 09:28:21 -0000	1.243
+++ modules/system.module	20 Oct 2005 19:46:54 -0000
@@ -785,17 +785,22 @@
   db_query("UPDATE {system} SET status = 0 WHERE type = 'theme'");
 
   if ($_POST['op'] == t('Save configuration')) {
-    variable_set('theme_default', $values['theme_default']);
     if (is_array($values['status'])) {
       foreach ($values['status'] as $key => $choice) {
         if ($choice) {
+          // If theme status is being set to 1 from 0, initialize block data for this theme if necessary.
+          if (db_num_rows(db_query("SELECT status FROM {system} WHERE type = 'theme' AND name = '%s' AND status = 0", $key))) {
+            system_initialize_theme_blocks($key);
+          }
+
           db_query("UPDATE {system} SET status = 1 WHERE type = 'theme' and name = '%s'", $key);
         }
       }
     }
+    variable_set('theme_default', $values['theme_default']);
   }
   else {
