summaryrefslogtreecommitdiff
path: root/strings
diff options
context:
space:
mode:
authorunknown <bar@mysql.com/bar.myoffice.izhnet.ru>2007-06-07 13:16:49 +0500
committerunknown <bar@mysql.com/bar.myoffice.izhnet.ru>2007-06-07 13:16:49 +0500
commit2971d645c16c548678b8f94796ca1bcfd54f9c8e (patch)
treec8a05b44075843941c638ea901f9eeaed1759f1f /strings
parent4bdbc3396ea4335ed1f6d01afe4f557b57b183a3 (diff)
downloadmariadb-git-2971d645c16c548678b8f94796ca1bcfd54f9c8e.tar.gz
Bug#26711 "Binary content 0x00 sometimes becomes 0x5C 0x00 after dump/load"
Problem: "SELECT INTO OUTFILE" created incorrect dumps for BLOBs, so "LOAD DATA" later incorrectly interpreted 0x5C as the second byte of a multi-byte sequence, instead of escape character. Fix: adding escaping of multi-byte heads. mysql-test/r/ctype_big5.result: Adding test case mysql-test/t/ctype_big5.test: Adding test case sql/sql_class.cc: Add escape characters before multi-byte heads. strings/ctype-big5.c: Flagging character set as dangerous for escaping. strings/ctype-gbk.c: Flagging character set as dangerous for escaping. strings/ctype-sjis.c: Flagging character set as dangerous for escaping.
Diffstat (limited to 'strings')
-rw-r--r--strings/ctype-big5.c4
-rw-r--r--strings/ctype-gbk.c4
-rw-r--r--strings/ctype-sjis.c4
3 files changed, 6 insertions, 6 deletions
diff --git a/strings/ctype-big5.c b/strings/ctype-big5.c
index be04d19a756..8bbbcac63e4 100644
--- a/strings/ctype-big5.c
+++ b/strings/ctype-big5.c
@@ -6400,7 +6400,7 @@ CHARSET_INFO my_charset_big5_chinese_ci=
0, /* min_sort_char */
255, /* max_sort_char */
' ', /* pad char */
- 0, /* escape_with_backslash_is_dangerous */
+ 1, /* escape_with_backslash_is_dangerous */
&my_charset_big5_handler,
&my_collation_big5_chinese_ci_handler
};
@@ -6433,7 +6433,7 @@ CHARSET_INFO my_charset_big5_bin=
0, /* min_sort_char */
255, /* max_sort_char */
' ', /* pad char */
- 0, /* escape_with_backslash_is_dangerous */
+ 1, /* escape_with_backslash_is_dangerous */
&my_charset_big5_handler,
&my_collation_mb_bin_handler
};
diff --git a/strings/ctype-gbk.c b/strings/ctype-gbk.c
index c7160e923a9..8ac7d62c9da 100644
--- a/strings/ctype-gbk.c
+++ b/strings/ctype-gbk.c
@@ -10046,7 +10046,7 @@ CHARSET_INFO my_charset_gbk_chinese_ci=
0, /* min_sort_char */
255, /* max_sort_char */
' ', /* pad char */
- 0, /* escape_with_backslash_is_dangerous */
+ 1, /* escape_with_backslash_is_dangerous */
&my_charset_handler,
&my_collation_ci_handler
};
@@ -10078,7 +10078,7 @@ CHARSET_INFO my_charset_gbk_bin=
0, /* min_sort_char */
255, /* max_sort_char */
' ', /* pad char */
- 0, /* escape_with_backslash_is_dangerous */
+ 1, /* escape_with_backslash_is_dangerous */
&my_charset_handler,
&my_collation_mb_bin_handler
};
diff --git a/strings/ctype-sjis.c b/strings/ctype-sjis.c
index a66a7a000a6..6a7c7d7c0a0 100644
--- a/strings/ctype-sjis.c
+++ b/strings/ctype-sjis.c
@@ -4694,7 +4694,7 @@ CHARSET_INFO my_charset_sjis_japanese_ci=
0, /* min_sort_char */
255, /* max_sort_char */
' ', /* pad char */
- 0, /* escape_with_backslash_is_dangerous */
+ 1, /* escape_with_backslash_is_dangerous */
&my_charset_handler,
&my_collation_ci_handler
};
@@ -4726,7 +4726,7 @@ CHARSET_INFO my_charset_sjis_bin=
0, /* min_sort_char */
255, /* max_sort_char */
' ', /* pad char */
- 0, /* escape_with_backslash_is_dangerous */
+ 1, /* escape_with_backslash_is_dangerous */
&my_charset_handler,
&my_collation_mb_bin_handler
};