summaryrefslogtreecommitdiff
path: root/client/mysql.cc
diff options
context:
space:
mode:
authorGalina Shalygina <galashalygina@gmail.com>2016-05-25 00:34:13 +0300
committerGalina Shalygina <galashalygina@gmail.com>2016-05-25 00:34:13 +0300
commit6c6c3af6aac428df8a934beeba15cc4ce77cbe01 (patch)
tree2f8241944db8952e6a54a417414773dd0b5b0b4e /client/mysql.cc
parentb4f1f42062d108230b62ad49fedd93ee6e38e168 (diff)
parentc7c2f8d4a0dedd52795b7f8a6971c35ea46cc016 (diff)
downloadmariadb-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.cc34
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':
{