? database/database.mysql.sbm
? database/database.pgsql.sbm
? database/updates.inc.sbm
? misc/Thumbs.db
? modules/block.module.sbm
? modules/contact.module.sbm
? modules/forum.module.sbm
? modules/help.module.sbm
? modules/system.module.sbm
? themes/bluemarine/Thumbs.db
? themes/pushbutton/Thumbs.db
Index: database/database.mysql
===================================================================
RCS file: /cvs/drupal/drupal/database/database.mysql,v
retrieving revision 1.176
diff -u -r1.176 database.mysql
--- database/database.mysql	11 Apr 2005 19:05:50 -0000	1.176
+++ database/database.mysql	11 Apr 2005 23:33:15 -0000
@@ -154,7 +154,6 @@
   info varchar(128) NOT NULL default '',
   format int(4) NOT NULL default '0',
   PRIMARY KEY (bid),
-  UNIQUE KEY title (title),
   UNIQUE KEY info (info)
 ) TYPE=MyISAM;
 
Index: database/database.pgsql
===================================================================
RCS file: /cvs/drupal/drupal/database/database.pgsql,v
retrieving revision 1.112
diff -u -r1.112 database.pgsql
--- database/database.pgsql	11 Apr 2005 19:05:50 -0000	1.112
+++ database/database.pgsql	11 Apr 2005 23:33:17 -0000
@@ -153,8 +153,7 @@
   info varchar(128) NOT NULL default '',
   format smallint NOT NULL default '0',
   PRIMARY KEY  (bid),
-  UNIQUE (info),
-  UNIQUE (title)
+  UNIQUE (info)
 );
 
 --
Index: database/updates.inc
===================================================================
RCS file: /cvs/drupal/drupal/database/updates.inc,v
retrieving revision 1.104
diff -u -r1.104 updates.inc
--- database/updates.inc	11 Apr 2005 19:05:51 -0000	1.104
+++ database/updates.inc	11 Apr 2005 23:36:17 -0000
@@ -106,7 +106,9 @@
   "2005-03-18" => "update_127",
   "2005-03-21" => "update_128",
   "2005-04-08: first update since Drupal 4.6.0 release" => "update_129",
+  "2005-04-08: first update since Drupal 4.6.0 release" => "update_129",
   "2005-04-10" => "update_130"
+  "2005-04-11" => "update_131"
 );
 
 function update_32() {
@@ -2376,4 +2378,18 @@
   return $ret;
 }
 
+function update_131() {
+  $ret = array();
+
+  if ($GLOBALS['db_type'] == 'mysql') {
+    $ret[] = update_sql("ALTER TABLE {boxes} DROP INDEX title");
+    $ret[] = update_sql("ALTER TABLE {boxes} ADD INDEX title (title)");
+  }
+  elseif ($GLOBALS['db_type'] == 'pgsql') {
+    $ret[] = update_sql("DROP INDEX boxes_title_idx");;
+    $ret[] = update_sql("CREATE INDEX title ON {boxes} (title)");
+  }
+
+  return $ret;
+}
 ?>
Index: modules/block.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/block.module,v
retrieving revision 1.162
diff -u -r1.162 block.module
--- modules/block.module	4 Apr 2005 12:27:05 -0000	1.162
+++ modules/block.module	11 Apr 2005 23:37:06 -0000
@@ -312,12 +312,13 @@
 
   switch ($op) {
     case t('Save block'):
-      block_box_save($edit);
-      drupal_set_message(t('The new block has been added.'));
-      drupal_goto('admin/block');
-
+      if (block_box_save($edit)) {
+        drupal_set_message(t('The new block has been added.'));
+        drupal_goto('admin/block');
+      }
+      // deliberate no break
     default:
-      $form = block_box_form();
+      $form = block_box_form($edit);
       $form .= form_submit(t('Save block'));
       $output .= form($form);
   }
@@ -368,8 +369,13 @@
     db_query("UPDATE {boxes} SET title = '%s', body = '%s', info = '%s', format = %d WHERE bid = %d", $edit['title'], $edit['body'], $edit['info'], $edit['format'], $delta);
   }
   else {
+    if (empty($edit['info']) || db_num_rows(db_query("SELECT info FROM {boxes} WHERE info = '%s'", $edit['info']))) {
+      form_set_error('title', t('Please ensure each block description is unique.'));
+      return false;
+    }
     db_query("INSERT INTO {boxes} (title, body, info, format) VALUES  ('%s', '%s', '%s', %d)", $edit['title'], $edit['body'], $edit['info'], $edit['format']);
   }
+  return true;
 }
 
 /**
