summaryrefslogtreecommitdiff
path: root/sql/sql_trigger.cc
diff options
context:
space:
mode:
Diffstat (limited to 'sql/sql_trigger.cc')
-rw-r--r--sql/sql_trigger.cc14
1 files changed, 11 insertions, 3 deletions
diff --git a/sql/sql_trigger.cc b/sql/sql_trigger.cc
index f93fe196728..079f6d29e87 100644
--- a/sql/sql_trigger.cc
+++ b/sql/sql_trigger.cc
@@ -97,7 +97,10 @@ Trigger_creation_ctx::create(THD *thd,
if (resolve_charset(client_cs_name->str,
thd->variables.character_set_client,
- &client_cs))
+ &client_cs,
+ thd->variables.old_behavior &
+ OLD_MODE_UTF8_IS_UTF8MB3 ?
+ MYF(MY_UTF8_IS_UTF8MB3):MYF(0)))
{
sql_print_warning("Trigger for table '%s'.'%s': "
"invalid character_set_client value (%s).",
@@ -110,7 +113,10 @@ Trigger_creation_ctx::create(THD *thd,
if (resolve_collation(connection_cl_name->str,
thd->variables.collation_connection,
- &connection_cl))
+ &connection_cl,
+ thd->variables.old_behavior &
+ OLD_MODE_UTF8_IS_UTF8MB3 ?
+ MYF(MY_UTF8_IS_UTF8MB3):MYF(0)))
{
sql_print_warning("Trigger for table '%s'.'%s': "
"invalid collation_connection value (%s).",
@@ -121,7 +127,9 @@ Trigger_creation_ctx::create(THD *thd,
invalid_creation_ctx= TRUE;
}
- if (resolve_collation(db_cl_name->str, NULL, &db_cl))
+ if (resolve_collation(db_cl_name->str, NULL, &db_cl,thd->variables.old_behavior &
+ OLD_MODE_UTF8_IS_UTF8MB3 ?
+ MYF(MY_UTF8_IS_UTF8MB3) : MYF(0)))
{
sql_print_warning("Trigger for table '%s'.'%s': "
"invalid database_collation value (%s).",