diff options
author | unknown <igor@rurik.mysql.com> | 2003-08-02 10:42:50 -0700 |
---|---|---|
committer | unknown <igor@rurik.mysql.com> | 2003-08-02 10:42:50 -0700 |
commit | af6d20830c3f192f1b617b610d1cc0def535f1fb (patch) | |
tree | a16ce0081f558c7e13340cc9ccd737ce4ec03df4 | |
parent | 681b73df5d28c5a5ffba4e2dc997d52e161b9c96 (diff) | |
parent | 6417c182df2b027d766075876ce969701d3e038a (diff) | |
download | mariadb-git-af6d20830c3f192f1b617b610d1cc0def535f1fb.tar.gz |
Merge rurik.mysql.com:/home/igor/mysql-4.1
into rurik.mysql.com:/home/igor/dev/mysql-4.1-0
-rw-r--r-- | sql/sql_acl.cc | 13 |
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)) |