Browse Source

! For the database types that support UTF-8, turn on UTF-8 not merely by default but force it on. Should fix #698

Signed-off-by: Peter Spicer <[email protected]>
Peter Spicer 10 years ago
parent
commit
a6569363a5
1 changed files with 5 additions and 5 deletions
  1. 5 5
      other/install.php

+ 5 - 5
other/install.php

@@ -34,7 +34,7 @@ $databases = array(
 		'utf8_version' => '5.0.3',
 		'utf8_version_check' => 'return mysqli_get_server_info($db_connection);',
 		'utf8_default' => true,
-		'utf8_required' => false,
+		'utf8_required' => true,
 		'alter_support' => true,
 		'validate_prefix' => create_function('&$value', '
 			$value = preg_replace(\'~[^A-Za-z0-9_\$]~\', \'\', $value);
@@ -54,7 +54,7 @@ $databases = array(
 		'utf8_version' => '5.0.3',
 		'utf8_version_check' => 'return mysql_get_server_info();',
 		'utf8_default' => true,
-		'utf8_required' => false,
+		'utf8_required' => true,
 		'alter_support' => true,
 		'validate_prefix' => create_function('&$value', '
 			$value = preg_replace(\'~[^A-Za-z0-9_\$]~\', \'\', $value);
@@ -69,7 +69,7 @@ $databases = array(
 		'supported' => function_exists('pg_connect'),
 		'always_has_db' => true,
 		'utf8_default' => true,
-		'utf8_required' => false,
+		'utf8_required' => true,
 		'utf8_support' => true,
 		'utf8_version' => '8.0',
 		'utf8_version_check' => '$request = pg_query(\'SELECT version()\'); list ($version) = pg_fetch_row($request); list($pgl, $version) = explode(" ", $version); return $version;',
@@ -121,7 +121,7 @@ $databases = array(
 		'supported' => is_callable(array('sqlite3', 'version')),
 		'always_has_db' => true,
 		'utf8_default' => true,
-		'utf8_required' => false,
+		'utf8_required' => true,
 		'utf8_support' => true,
 		'validate_prefix' => create_function('&$value', '
 			global $incontext, $txt;
@@ -1087,7 +1087,7 @@ function DatabasePopulation()
 	$replaces['{$default_reserved_names}'] = strtr($replaces['{$default_reserved_names}'], array('\\\\n' => '\\n'));
 
 	// If the UTF-8 setting was enabled, add it to the table definitions.
-	if (empty($databases[$db_type]['utf8_required']) && isset($_POST['utf8']) && !empty($databases[$db_type]['utf8_support']))
+	if (!empty($databases[$db_type]['utf8_support']) && (!empty($databases[$db_type]['utf8_required']) || isset($_POST['utf8'])))
 		$replaces[') ENGINE=MyISAM;'] = ') ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;';
 
 	// Read in the SQL.  Turn this on and that off... internationalize... etc.