summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorunknown <guilhem@mysql.com>2003-08-02 17:24:44 +0200
committerunknown <guilhem@mysql.com>2003-08-02 17:24:44 +0200
commit6417c182df2b027d766075876ce969701d3e038a (patch)
treeeb852c8e24cff270ef0f00ba29dfc30333196f66 /sql
parentb97d0ea2c3c2d325c56f01a8edf26e7944dea749 (diff)
parenta7eb7a78ddc49c32f0d651eb83d1d34a0e8b6756 (diff)
downloadmariadb-git-6417c182df2b027d766075876ce969701d3e038a.tar.gz
Merge gbichot@213.136.52.20:/home/bk/mysql-4.1
into mysql.com:/home/mysql_src/mysql-4.1 sql/sql_acl.cc: Auto merged
Diffstat (limited to 'sql')
-rw-r--r--sql/sql_acl.cc13
1 files changed, 11 insertions, 2 deletions
diff --git a/sql/sql_acl.cc b/sql/sql_acl.cc
index 598ff153cad..54a0ee05db2 100644
--- a/sql/sql_acl.cc
+++ b/sql/sql_acl.cc
@@ -3221,8 +3221,17 @@ int open_grant_tables(THD *thd, TABLE_LIST *tables)
GRANT and REVOKE are applied the slave in/exclusion rules as they are
some kind of updates to the mysql.% tables.
*/
- if (thd->slave_thread && table_rules_on && !tables_ok(0, tables))
- DBUG_RETURN(1);
+ if (thd->slave_thread && table_rules_on)
+ {
+ /*
+ The tables must be marked "updating" so that tables_ok() takes them into
+ account in tests.
+ */
+ tables[0].updating=tables[1].updating=tables[2].updating=tables[3].updating=1;
+ if (!tables_ok(0, tables))
+ DBUG_RETURN(1);
+ tables[0].updating=tables[1].updating=tables[2].updating=tables[3].updating=0;
+ }
#endif
if (open_and_lock_tables(thd, tables))