diff options
author | Sergei Golubchik <serg@mariadb.org> | 2017-06-27 14:00:10 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2017-06-27 14:00:37 +0200 |
commit | d5cd33450413816f8696125cd66c8393921e6267 (patch) | |
tree | 80c1a9b013e218aaee4ade6c55984a791dfe61ca /sql | |
parent | 39385ff7b253302723a94c896d199a83adb8622f (diff) | |
download | mariadb-git-d5cd33450413816f8696125cd66c8393921e6267.tar.gz |
MDEV-13187 incorrect backslash parsing in clients
cover ANSI_QUOTES and NO_BACKSLASH_ESCAPES in mysqltest
Diffstat (limited to 'sql')
-rw-r--r-- | sql/sql_class.cc | 2 | ||||
-rw-r--r-- | sql/sys_vars.cc | 4 |
2 files changed, 6 insertions, 0 deletions
diff --git a/sql/sql_class.cc b/sql/sql_class.cc index 46eabb41a74..3c07c1606a2 100644 --- a/sql/sql_class.cc +++ b/sql/sql_class.cc @@ -1250,6 +1250,8 @@ void THD::init(void) server_status= SERVER_STATUS_AUTOCOMMIT; if (variables.sql_mode & MODE_NO_BACKSLASH_ESCAPES) server_status|= SERVER_STATUS_NO_BACKSLASH_ESCAPES; + if (variables.sql_mode & MODE_ANSI_QUOTES) + server_status|= SERVER_STATUS_ANSI_QUOTES; transaction.all.modified_non_trans_table= transaction.stmt.modified_non_trans_table= FALSE; diff --git a/sql/sys_vars.cc b/sql/sys_vars.cc index 35997525456..ffe861ddfbc 100644 --- a/sql/sys_vars.cc +++ b/sql/sys_vars.cc @@ -2173,6 +2173,10 @@ static bool fix_sql_mode(sys_var *self, THD *thd, enum_var_type type) thd->server_status|= SERVER_STATUS_NO_BACKSLASH_ESCAPES; else thd->server_status&= ~SERVER_STATUS_NO_BACKSLASH_ESCAPES; + if (thd->variables.sql_mode & MODE_ANSI_QUOTES) + thd->server_status|= SERVER_STATUS_ANSI_QUOTES; + else + thd->server_status&= ~SERVER_STATUS_ANSI_QUOTES; } return false; } |