mirror of
https://github.com/MariaDB/server.git
synced 2025-12-24 11:21:21 +03:00
Merge with 3.23.55
BitKeeper/deleted/.del-net.c~ef21d6402bb882f9: Auto merged innobase/os/os0file.c: Auto merged libmysql/Makefile.am: Auto merged scripts/make_binary_distribution.sh: Auto merged sql/log.cc: Auto merged sql/mysqld.cc: Auto merged sql/sql_select.cc: Auto merged Build-tools/Do-compile: Use local version Makefile.am: remove double libmysql_r configure.in: Use local libmysql/libmysql.c: Dont abort connection if too big packet error sql/ha_innodb.cc: use local sql/net_serv.cc: use local sql/sql_parse.cc: Merge with 3.23.55 (fix double free of user)
This commit is contained in:
@@ -977,6 +977,7 @@ bool dispatch_command(enum enum_server_command command, THD *thd,
|
||||
char *save_user= thd->user;
|
||||
char *save_priv_user= thd->priv_user;
|
||||
char *save_db= thd->db;
|
||||
thd->user=0;
|
||||
USER_CONN *save_uc= thd->user_connect;
|
||||
|
||||
if ((uint) ((uchar*) db - net->read_pos) > packet_length)
|
||||
@@ -987,7 +988,6 @@ bool dispatch_command(enum enum_server_command command, THD *thd,
|
||||
if (check_user(thd, COM_CHANGE_USER, user, passwd, db, 0))
|
||||
{ // Restore old user
|
||||
x_free(thd->user);
|
||||
x_free(thd->db);
|
||||
thd->master_access=save_master_access;
|
||||
thd->db_access=save_db_access;
|
||||
thd->db=save_db;
|
||||
|
||||
Reference in New Issue
Block a user