patch 8.2.0689: when using getaddrinfo() the error message is unclear
Problem: When using getaddrinfo() the error message is unclear.
Solution: Use gai_strerror() to get the message. (Ozaki Kiichi,
closes #6034)
diff --git a/src/channel.c b/src/channel.c
index 9577f3d..68ac4bc 100644
--- a/src/channel.c
+++ b/src/channel.c
@@ -955,6 +955,7 @@
int sd = -1;
channel_T *channel = NULL;
#ifdef FEAT_IPV6
+ int err;
struct addrinfo hints;
struct addrinfo *res = NULL;
struct addrinfo *addr = NULL;
@@ -986,10 +987,11 @@
// Set port number manually in order to prevent name resolution services
// from being invoked in the environment where AI_NUMERICSERV is not
// defined.
- if (getaddrinfo(hostname, NULL, &hints, &res) != 0)
+ if ((err = getaddrinfo(hostname, NULL, &hints, &res)) != 0)
{
ch_error(channel, "in getaddrinfo() in channel_open()");
- PERROR(_("E901: getaddrinfo() in channel_open()"));
+ semsg(_("E901: getaddrinfo() in channel_open(): %s"),
+ gai_strerror(err));
channel_free(channel);
return NULL;
}