summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorunknown <heikki@hundin.mysql.fi>2004-12-10 17:12:47 +0200
committerunknown <heikki@hundin.mysql.fi>2004-12-10 17:12:47 +0200
commitc486461e4430ced16300cc86c007a8d1d980af93 (patch)
treee1d78d4226b32471918cc97633672f886e0c6970 /sql
parentd5da66e83c84aa74e1548fd3f8205b98adb02a24 (diff)
downloadmariadb-git-c486461e4430ced16300cc86c007a8d1d980af93.tar.gz
dict0dict.h, dict0dict.c, ha_innodb.cc:
Fix for the 0xA0 character problem in the InnoDB FOREIGN KEY parser: if my_isspace() treats 0xA0 as space, then let InnoDB do the same; this might break some multi-byte charset id's, though for big5, ujis, sjis this seems not to change the current behavior (I checked the tables in /share/charsets); this fix must NOT be merged to 4.1 because in 4.1 everything is in UTF-8 sql/ha_innodb.cc: Fix for the 0xA0 character problem in the InnoDB FOREIGN KEY parser: if my_isspace() treats 0xA0 as space, then let InnoDB do the same; this might break some multi-byte charset id's, though for big5, ujis, sjis this seems not to change the current behavior (I checked the tables in /share/charsets); this fix must NOT be merged to 4.1 because in 4.1 everything is in UTF-8 innobase/dict/dict0dict.c: Fix for the 0xA0 character problem in the InnoDB FOREIGN KEY parser: if my_isspace() treats 0xA0 as space, then let InnoDB do the same; this might break some multi-byte charset id's, though for big5, ujis, sjis this seems not to change the current behavior (I checked the tables in /share/charsets); this fix must NOT be merged to 4.1 because in 4.1 everything is in UTF-8 innobase/include/dict0dict.h: Fix for the 0xA0 character problem in the InnoDB FOREIGN KEY parser: if my_isspace() treats 0xA0 as space, then let InnoDB do the same; this might break some multi-byte charset id's, though for big5, ujis, sjis this seems not to change the current behavior (I checked the tables in /share/charsets); this fix must NOT be merged to 4.1 because in 4.1 everything is in UTF-8
Diffstat (limited to 'sql')
-rw-r--r--sql/ha_innodb.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/sql/ha_innodb.cc b/sql/ha_innodb.cc
index 91f92c8cadb..c36075207ed 100644
--- a/sql/ha_innodb.cc
+++ b/sql/ha_innodb.cc
@@ -64,6 +64,7 @@ extern "C" {
#include "../innobase/include/log0log.h"
#include "../innobase/include/lock0lock.h"
#include "../innobase/include/dict0crea.h"
+#include "../innobase/include/dict0dict.h"
#include "../innobase/include/btr0cur.h"
#include "../innobase/include/btr0btr.h"
#include "../innobase/include/fsp0fsp.h"
@@ -917,6 +918,10 @@ innobase_init(void)
srv_print_verbose_log = mysql_embedded ? 0 : 1;
+ if (my_isspace(default_charset_info, (char)0xA0)) {
+ dict_char_0xA0_is_space = TRUE;
+ }
+
if (strcmp(default_charset_info->name, "latin1") == 0) {
/* Store the character ordering table to InnoDB.