Index: modules/block/block.admin.inc
===================================================================
RCS file: /cvs/drupal/drupal/modules/block/block.admin.inc,v
retrieving revision 1.86
diff -u -B -r1.86 block.admin.inc
--- modules/block/block.admin.inc	30 Aug 2010 00:22:03 -0000	1.86
+++ modules/block/block.admin.inc	16 Sep 2010 15:48:57 -0000
@@ -475,14 +475,17 @@
     }
     $query->execute();
 
-    // Store regions per theme for this block
+    // Update the customised settings for all enabled themes. This will create new rows if required.
     foreach ($form_state['values']['regions'] as $theme => $region) {
       db_merge('block')
         ->key(array('theme' => $theme, 'delta' => $form_state['values']['delta'], 'module' => $form_state['values']['module']))
         ->fields(array(
+          'status' => (int) ($region != BLOCK_REGION_NONE),
           'region' => ($region == BLOCK_REGION_NONE ? '' : $region),
+          'visibility' => (int) $form_state['values']['visibility'],
           'pages' => trim($form_state['values']['pages']),
-          'status' => (int) ($region != BLOCK_REGION_NONE),
+          'custom' => (int) $form_state['values']['custom'],
+          'title' => trim($form_state['values']['title']),
         ))
         ->execute();
     }
