From ff8f68d2d5d10d5415d32abeb81f560059dee4bc Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 11 Jul 2006 12:42:03 -0700 Subject: [PATCH] Bug #17485: mysql client crashes when connecting to the Instance Manager Using \U or \u in a prompt with the mysql command-line client could crash when connecting to the instance manager, since it does not return information about the user when asked by the client. This is fixed by having the client use what it knowns about the user (or giving up and saying "(unknown)"). client/mysql.cc: init_username() may not retrieve a username (such as from the instance manager), in which case we fall back to what was specified on the command line (or .cnf file) or finally (unknown). --- client/mysql.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/client/mysql.cc b/client/mysql.cc index 6fcda6d766f..f4abffaf445 100644 --- a/client/mysql.cc +++ b/client/mysql.cc @@ -3623,12 +3623,14 @@ static const char* construct_prompt() case 'U': if (!full_username) init_username(); - processed_prompt.append(full_username); + processed_prompt.append(full_username ? full_username : + (current_user ? current_user : "(unknown)")); break; case 'u': if (!full_username) init_username(); - processed_prompt.append(part_username); + processed_prompt.append(part_username ? part_username : + (current_user ? current_user : "(unknown)")); break; case PROMPT_CHAR: processed_prompt.append(PROMPT_CHAR);