summaryrefslogtreecommitdiff
path: root/sql/set_var.cc
diff options
context:
space:
mode:
authorSergei Golubchik <sergii@pisem.net>2014-01-28 21:02:17 +0100
committerSergei Golubchik <sergii@pisem.net>2014-01-28 21:02:17 +0100
commit92eafe1ab1777b40c90ff73b91a9656da947b740 (patch)
tree3fd98224fb95ce65e7db52ef112b68822cba036b /sql/set_var.cc
parent03b428d2cdf50cb97e607c55649035265f6c3c71 (diff)
downloadmariadb-git-92eafe1ab1777b40c90ff73b91a9656da947b740.tar.gz
MDEV-5521 SET ROLE as prepared statement crashes the server
set_role::light_check() was incorrect
Diffstat (limited to 'sql/set_var.cc')
-rw-r--r--sql/set_var.cc6
1 files changed, 2 insertions, 4 deletions
diff --git a/sql/set_var.cc b/sql/set_var.cc
index 8ae29e01a20..4d218bcc35b 100644
--- a/sql/set_var.cc
+++ b/sql/set_var.cc
@@ -855,9 +855,7 @@ int set_var_password::update(THD *thd)
int set_var_role::check(THD *thd)
{
#ifndef NO_EMBEDDED_ACCESS_CHECKS
- ulonglong access;
- int status= acl_check_setrole(thd, base.str, &access);
- save_result.ulonglong_value= access;
+ int status= acl_check_setrole(thd, role.str, &access);
return status;
#else
return 0;
@@ -867,7 +865,7 @@ int set_var_role::check(THD *thd)
int set_var_role::update(THD *thd)
{
#ifndef NO_EMBEDDED_ACCESS_CHECKS
- return acl_setrole(thd, base.str, save_result.ulonglong_value);
+ return acl_setrole(thd, role.str, access);
#else
return 0;
#endif