diff options
author | unknown <kaa@polly.local> | 2007-06-07 10:26:04 +0400 |
---|---|---|
committer | unknown <kaa@polly.local> | 2007-06-07 10:26:04 +0400 |
commit | cdb9759ef106dc7517d6468a879c2014c06794d0 (patch) | |
tree | 04ebbf9fe0ae052bdfc0963e6262dd891915470e | |
parent | f5bc5381ae6142c4de27b282fb9cd63130b174f6 (diff) | |
parent | 3ac87034ca389be09ce80d982f0e13f653f98cb4 (diff) | |
download | mariadb-git-cdb9759ef106dc7517d6468a879c2014c06794d0.tar.gz |
Merge polly.local:/home/kaa/src/maint/bug28895/my50-bug28895
into polly.local:/home/kaa/src/maint/mysql-5.0-maint
sql/sql_acl.cc:
Auto merged
-rw-r--r-- | mysql-test/r/view_grant.result | 4 | ||||
-rw-r--r-- | sql/sql_acl.cc | 13 |
2 files changed, 9 insertions, 8 deletions
diff --git a/mysql-test/r/view_grant.result b/mysql-test/r/view_grant.result index 32dffa305e5..0f9ce47dec6 100644 --- a/mysql-test/r/view_grant.result +++ b/mysql-test/r/view_grant.result @@ -601,9 +601,9 @@ Warnings: Note 1449 There is no 'no-such-user'@'localhost' registered SHOW CREATE VIEW v; View Create View -v CREATE ALGORITHM=UNDEFINED DEFINER=`no-such-user`@`localhost` SQL SECURITY DEFINER VIEW `v` AS select `t1`.`a` AS `a` from `t1` +v CREATE ALGORITHM=UNDEFINED DEFINER=`no-such-user`@`localhost` SQL SECURITY DEFINER VIEW `v` AS select `test`.`t1`.`a` AS `a` from `t1` Warnings: -Note 1449 There is no 'no-such-user'@'localhost' registered +Warning 1356 View 'test.v' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them SELECT * FROM v; ERROR HY000: There is no 'no-such-user'@'localhost' registered DROP VIEW v; diff --git a/sql/sql_acl.cc b/sql/sql_acl.cc index ba6d03d6063..cae1f6eb243 100644 --- a/sql/sql_acl.cc +++ b/sql/sql_acl.cc @@ -978,14 +978,15 @@ bool acl_getroot_no_password(Security_context *sctx, char *user, char *host, */ for (i=0 ; i < acl_users.elements ; i++) { - acl_user= dynamic_element(&acl_users,i,ACL_USER*); - if ((!acl_user->user && !user[0]) || - (acl_user->user && strcmp(user, acl_user->user) == 0)) + ACL_USER *acl_user_tmp= dynamic_element(&acl_users,i,ACL_USER*); + if ((!acl_user_tmp->user && !user[0]) || + (acl_user_tmp->user && strcmp(user, acl_user_tmp->user) == 0)) { - if (compare_hostname(&acl_user->host, host, ip)) + if (compare_hostname(&acl_user_tmp->host, host, ip)) { - res= 0; - break; + acl_user= acl_user_tmp; + res= 0; + break; } } } |