mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge
This commit is contained in:
@ -158,7 +158,6 @@ OPEN_TABLE_LIST *list_open_tables(THD *thd, const char *wild)
|
||||
table_list.grant.privilege=0;
|
||||
if (check_table_access(thd,SELECT_ACL | EXTRA_ACL,&table_list,1))
|
||||
continue;
|
||||
|
||||
/* need to check if we haven't already listed it */
|
||||
for (table= open_list ; table ; table=table->next)
|
||||
{
|
||||
@ -873,7 +872,7 @@ TABLE *open_table(THD *thd,const char *db,const char *table_name,
|
||||
table->version=refresh_version;
|
||||
table->flush_version=flush_version;
|
||||
DBUG_PRINT("info", ("inserting table %p into the cache", table));
|
||||
VOID(hash_insert(&open_cache,(byte*) table));
|
||||
VOID(my_hash_insert(&open_cache,(byte*) table));
|
||||
}
|
||||
|
||||
table->in_use=thd;
|
||||
@ -1696,8 +1695,10 @@ Field *find_field_in_table(THD *thd,TABLE *table,const char *name,uint length,
|
||||
else
|
||||
thd->dupp_field=field;
|
||||
}
|
||||
#ifndef NO_EMBEDDED_ACCESS_CHECKS
|
||||
if (check_grants && check_grant_column(thd,table,name,length))
|
||||
return WRONG_GRANT;
|
||||
#endif
|
||||
return field;
|
||||
}
|
||||
|
||||
@ -2114,11 +2115,12 @@ insert_fields(THD *thd,TABLE_LIST *tables, const char *db_name,
|
||||
tables->alias) &&
|
||||
(!db_name || !strcmp(tables->db,db_name))))
|
||||
{
|
||||
#ifndef NO_EMBEDDED_ACCESS_CHECKS
|
||||
/* Ensure that we have access right to all columns */
|
||||
if (!(table->grant.privilege & SELECT_ACL) &&
|
||||
check_grant_all_columns(thd,SELECT_ACL,table))
|
||||
DBUG_RETURN(-1);
|
||||
|
||||
#endif
|
||||
Field **ptr=table->field,*field;
|
||||
thd->used_tables|=table->map;
|
||||
while ((field = *ptr++))
|
||||
@ -2343,7 +2345,7 @@ int mysql_create_index(THD *thd, TABLE_LIST *table_list, List<Key> &keys)
|
||||
DBUG_ENTER("mysql_create_index");
|
||||
bzero((char*) &create_info,sizeof(create_info));
|
||||
create_info.db_type=DB_TYPE_DEFAULT;
|
||||
create_info.table_charset= thd->variables.character_set_database;
|
||||
create_info.table_charset= thd->variables.collation_database;
|
||||
DBUG_RETURN(mysql_alter_table(thd,table_list->db,table_list->real_name,
|
||||
&create_info, table_list,
|
||||
fields, keys, drop, alter, 0, (ORDER*)0, FALSE,
|
||||
@ -2360,7 +2362,7 @@ int mysql_drop_index(THD *thd, TABLE_LIST *table_list, List<Alter_drop> &drop)
|
||||
DBUG_ENTER("mysql_drop_index");
|
||||
bzero((char*) &create_info,sizeof(create_info));
|
||||
create_info.db_type=DB_TYPE_DEFAULT;
|
||||
create_info.table_charset= thd->variables.character_set_database;
|
||||
create_info.table_charset= thd->variables.collation_database;
|
||||
DBUG_RETURN(mysql_alter_table(thd,table_list->db,table_list->real_name,
|
||||
&create_info, table_list,
|
||||
fields, keys, drop, alter, 0, (ORDER*)0, FALSE,
|
||||
|
Reference in New Issue
Block a user