? includes/database/d7
? sites/default/files
? sites/default/settings.php
Index: includes/database/schema.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/database/schema.inc,v
retrieving revision 1.4
diff -u -p -r1.4 schema.inc
--- includes/database/schema.inc	31 Oct 2008 15:46:16 -0000	1.4
+++ includes/database/schema.inc	17 Nov 2008 20:33:51 -0000
@@ -120,6 +120,8 @@ abstract class DatabaseSchema {
 
   protected $connection;
 
+  protected $createTablePlaceholders;
+
   public function __construct($connection) {
     $this->connection = $connection;
   }
@@ -376,8 +378,9 @@ abstract class DatabaseSchema {
    */
   public function createTable(&$ret, $name, $table) {
     $statements = $this->createTableSql($name, $table);
-    foreach ($statements as $statement) {
-      $ret[] = update_sql($statement);
+    foreach ($statements as $index => $statement) {
+      $result = db_query($statement, isset($this->createTablePlaceholders[$index]) ? $this->createTablePlaceholders[$index] : array());
+      $ret[] = array('success' => $result !== FALSE, 'query' => check_plain($statement));
     }
   }
 
Index: includes/database/mysql/schema.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/database/mysql/schema.inc,v
retrieving revision 1.6
diff -u -p -r1.6 schema.inc
--- includes/database/mysql/schema.inc	13 Nov 2008 20:52:13 -0000	1.6
+++ includes/database/mysql/schema.inc	17 Nov 2008 20:33:51 -0000
@@ -34,6 +34,9 @@ class DatabaseSchema_mysql extends Datab
    *   An array of SQL statements to create the table.
    */
   protected function createTableSql($name, $table) {
+    // Initialize placeholders array.
+    $this->createTablePlaceholders = array(0 => array());
+
     if (empty($table['mysql_suffix'])) {
       $table['mysql_suffix'] = "/*!40100 DEFAULT CHARACTER SET UTF8 */";
     }
@@ -54,8 +57,12 @@ class DatabaseSchema_mysql extends Datab
     // Remove the last comma and space.
     $sql = substr($sql, 0, -3) . "\n) ";
 
-    $sql .= $table['mysql_suffix'];
+    if (!empty($table['description'])) {
+      $sql .= "COMMENT=? ";
+      $this->createTablePlaceholders[0][] = truncate_utf8(html_entity_decode(strip_tags($table['description']), ENT_QUOTES, 'UTF-8'), 60, TRUE, TRUE);
+    }
 
+    $sql .= $table['mysql_suffix'];
     return array($sql);
   }
 
@@ -107,6 +114,11 @@ class DatabaseSchema_mysql extends Datab
       $sql .= ' DEFAULT NULL';
     }
 
+    if (!empty($spec['description'])) {
+      $sql .= ' COMMENT ?';
+      $this->createTablePlaceholders[0][] = truncate_utf8(html_entity_decode(strip_tags($spec['description']), ENT_QUOTES, 'UTF-8'), 255, TRUE, TRUE);
+    }
+
     return $sql;
   }
 
