diff options
author | Galina Shalygina <galashalygina@gmail.com> | 2016-05-25 00:34:13 +0300 |
---|---|---|
committer | Galina Shalygina <galashalygina@gmail.com> | 2016-05-25 00:34:13 +0300 |
commit | 6c6c3af6aac428df8a934beeba15cc4ce77cbe01 (patch) | |
tree | 2f8241944db8952e6a54a417414773dd0b5b0b4e /client/mysql.cc | |
parent | b4f1f42062d108230b62ad49fedd93ee6e38e168 (diff) | |
parent | c7c2f8d4a0dedd52795b7f8a6971c35ea46cc016 (diff) | |
download | mariadb-git-10.2-test1234.tar.gz |
Merge branch '10.2' into 10.2-mdev986410.2-test1234
Diffstat (limited to 'client/mysql.cc')
-rw-r--r-- | client/mysql.cc | 34 |
1 files changed, 24 insertions, 10 deletions
diff --git a/client/mysql.cc b/client/mysql.cc index 9c6320fe10a..bea015d721e 100644 --- a/client/mysql.cc +++ b/client/mysql.cc @@ -5112,17 +5112,31 @@ static const char *construct_prompt() processed_prompt.append("unknown"); break; case 'h': + case 'H': { - const char *prompt; - prompt= connected ? mysql_get_host_info(&mysql) : "not_connected"; - if (strstr(prompt, "Localhost")) - processed_prompt.append("localhost"); - else - { - const char *end=strcend(prompt,' '); - processed_prompt.append(prompt, (uint) (end-prompt)); - } - break; + const char *prompt; + prompt= connected ? mysql_get_host_info(&mysql) : "not_connected"; + if (strstr(prompt, "Localhost")) + { + if (*c == 'h') + processed_prompt.append("localhost"); + else + { + static char hostname[FN_REFLEN]; + if (hostname[0]) + processed_prompt.append(hostname); + else if (gethostname(hostname, sizeof(hostname)) == 0) + processed_prompt.append(hostname); + else + processed_prompt.append("gethostname(2) failed"); + } + } + else + { + const char *end=strcend(prompt,' '); + processed_prompt.append(prompt, (uint) (end-prompt)); + } + break; } case 'p': { |