summaryrefslogtreecommitdiff
path: root/sql/sql_base.cc
diff options
context:
space:
mode:
authorunknown <monty@work.mysql.com>2001-05-20 12:38:19 +0200
committerunknown <monty@work.mysql.com>2001-05-20 12:38:19 +0200
commit17fbf163c0d3a9ef769b6237df9c4033a0c0439f (patch)
tree65d07974d1958323c45101a68d5cea7a0f7f319a /sql/sql_base.cc
parent83e3058c3e6ebd1ec2ffa03854eaf1388bb4c484 (diff)
parent112ad6720539a0bfc6dec31db64b619298a52deb (diff)
downloadmariadb-git-17fbf163c0d3a9ef769b6237df9c4033a0c0439f.tar.gz
merge
BitKeeper/etc/ignore: auto-union BitKeeper/etc/logging_ok: auto-union client/mysql.cc: Auto merged myisam/mi_search.c: Auto merged sql/sql_select.cc: Auto merged
Diffstat (limited to 'sql/sql_base.cc')
-rw-r--r--sql/sql_base.cc11
1 files changed, 7 insertions, 4 deletions
diff --git a/sql/sql_base.cc b/sql/sql_base.cc
index b164242af44..37a14f02bcc 100644
--- a/sql/sql_base.cc
+++ b/sql/sql_base.cc
@@ -1760,7 +1760,8 @@ int setup_fields(THD *thd, TABLE_LIST *tables, List<Item> &fields,
if (item->type() == Item::FIELD_ITEM &&
((Item_field*) item)->field_name[0] == '*')
{
- if (insert_fields(thd,tables,((Item_field*) item)->table_name,&it))
+ if (insert_fields(thd,tables,((Item_field*) item)->db_name,
+ ((Item_field*) item)->table_name,&it))
DBUG_RETURN(-1); /* purecov: inspected */
}
else
@@ -1844,8 +1845,8 @@ static key_map get_key_map_from_key_list(TABLE *table,
****************************************************************************/
bool
-insert_fields(THD *thd,TABLE_LIST *tables, const char *table_name,
- List_iterator<Item> *it)
+insert_fields(THD *thd,TABLE_LIST *tables, const char *db_name,
+ const char *table_name, List_iterator<Item> *it)
{
uint found;
DBUG_ENTER("insert_fields");
@@ -1857,7 +1858,9 @@ insert_fields(THD *thd,TABLE_LIST *tables, const char *table_name,
if (grant_option && !thd->master_access &&
check_grant_all_columns(thd,SELECT_ACL,table) )
DBUG_RETURN(-1);
- if (!table_name || !strcmp(table_name,tables->name))
+ if (!table_name || (!strcmp(table_name,tables->name) &&
+ (!db_name || !tables->db ||
+ !strcmp(tables->db,db_name))))
{
Field **ptr=table->field,*field;
thd->used_tables|=table->map;