From e428b3777db80dd0d5485cbfe2b129f382bce329 Mon Sep 17 00:00:00 2001 From: Manuel Ung Date: Fri, 3 Feb 2023 11:58:59 -0800 Subject: [PATCH] Fix leak in run_plugin_auth_nonblocking Summary: This fixes this leak: ``` Direct leak of 74 byte(s) in 2 object(s) allocated from: #0 0x9f235f in malloc #1 0xd88f47 in my_raw_malloc(unsigned long, int) #2 0xd88e1e in my_malloc(unsigned int, unsigned long, int) #3 0xc183e4 in read_ok_ex #4 0xc479d5 in authsm_handle_second_authenticate_user(mysql_async_auth*) #5 0xc32a97 in run_plugin_auth_nonblocking(MYSQL*, char*, unsigned int, char const*, char const*, char const*, char const*, bool) #6 0xc3329a in run_plugin_auth_nonblocking_wrapper #7 0xbfd0de in mysql_change_user_nonblocking #8 0xb7f162 in async_mysql_change_user_wrapper(MYSQL*, char const*, char const*, char const*) #9 0xb7eff1 in mysql_change_user_wrapper(MYSQL*, char const*, char const*, char const*) #10 0xb63882 in do_change_user(st_command*) #11 0xb5ad99 in main #12 0x7fbe8362c656 in __libc_start_call_main #13 0x7fbe8362c717 in __libc_start_main_impl #14 0x94b160 in _start ``` Squash with: D29434855 Reviewed By: jupyung Differential Revision: D43006844 fbshipit-source-id: 254272b369fccc39e1c866a5d179a3c7401942eb --- sql-common/client.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/sql-common/client.cc b/sql-common/client.cc index bd54919dcb70..a012cc105e2b 100644 --- a/sql-common/client.cc +++ b/sql-common/client.cc @@ -5951,6 +5951,7 @@ mysql_state_machine_status run_plugin_auth_nonblocking( my_free(ctx->saved_db); // alloc new connect information + my_free(mysql->db); mysql->db = db ? my_strdup(PSI_NOT_INSTRUMENTED, db, MYF(MY_WME)) : 0; } else { // STATE_MACHINE_FAILED // free temporary connect information