1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

Merge shellback.(none):/home/msvensson/mysql/mysql-5.0

into  shellback.(none):/home/msvensson/mysql/mysql-5.1
This commit is contained in:
msvensson@shellback.(none)
2006-03-01 15:49:50 +01:00
6 changed files with 90 additions and 11 deletions

View File

@ -1226,7 +1226,8 @@ err:
bool mysql_change_db(THD *thd, const char *name, bool no_access_check)
{
int length, db_length;
char *dbname=my_strdup((char*) name,MYF(MY_WME));
char *dbname= thd->slave_thread ? (char *) name :
my_strdup((char *) name, MYF(MY_WME));
char path[FN_REFLEN];
HA_CREATE_INFO create;
bool system_db= 0;
@ -1249,7 +1250,8 @@ bool mysql_change_db(THD *thd, const char *name, bool no_access_check)
system_db= 1;
goto end;
}
x_free(dbname); /* purecov: inspected */
if (!(thd->slave_thread))
x_free(dbname); /* purecov: inspected */
my_message(ER_NO_DB_ERROR, ER(ER_NO_DB_ERROR),
MYF(0)); /* purecov: inspected */
DBUG_RETURN(1); /* purecov: inspected */
@ -1257,7 +1259,8 @@ bool mysql_change_db(THD *thd, const char *name, bool no_access_check)
if (check_db_name(dbname))
{
my_error(ER_WRONG_DB_NAME, MYF(0), dbname);
my_free(dbname, MYF(0));
if (!(thd->slave_thread))
my_free(dbname, MYF(0));
DBUG_RETURN(1);
}
DBUG_PRINT("info",("Use database: %s", dbname));
@ -1287,7 +1290,8 @@ bool mysql_change_db(THD *thd, const char *name, bool no_access_check)
dbname);
general_log_print(thd, COM_INIT_DB, ER(ER_DBACCESS_DENIED_ERROR),
sctx->priv_user, sctx->priv_host, dbname);
my_free(dbname,MYF(0));
if (!(thd->slave_thread))
my_free(dbname,MYF(0));
DBUG_RETURN(1);
}
}
@ -1298,7 +1302,8 @@ bool mysql_change_db(THD *thd, const char *name, bool no_access_check)
if (my_access(path,F_OK))
{
my_error(ER_BAD_DB_ERROR, MYF(0), dbname);
my_free(dbname,MYF(0));
if (!(thd->slave_thread))
my_free(dbname,MYF(0));
DBUG_RETURN(1);
}
end:
@ -1306,7 +1311,8 @@ end:
x_free(thd->db);
if (dbname && dbname[0] == 0)
{
my_free(dbname, MYF(0));
if (!(thd->slave_thread))
my_free(dbname, MYF(0));
thd->db= NULL;
thd->db_length= 0;
}