mingw: ensure sockets are initialized before calling gethostname

If the Windows sockets subsystem has not been initialized yet then an
attempt to get the hostname returns an error and prints a warning to the
console. This solves this issue for msysGit as seen with 'git fetch'.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
This commit is contained in:
Pat Thoyts 2011-10-14 09:56:16 +01:00
parent 7e4bf67e6a
commit e59f1619d0
2 changed files with 10 additions and 0 deletions

View file

@ -1391,6 +1391,13 @@ static void ensure_socket_initialization(void)
initialized = 1;
}
#undef gethostname
int mingw_gethostname(char *name, int namelen)
{
ensure_socket_initialization();
return gethostname(name, namelen);
}
#undef gethostbyname
struct hostent *mingw_gethostbyname(const char *host)
{

View file

@ -187,6 +187,9 @@ char *mingw_getcwd(char *pointer, int len);
char *mingw_getenv(const char *name);
#define getenv mingw_getenv
int mingw_gethostname(char *host, int namelen);
#define gethostname mingw_gethostname
struct hostent *mingw_gethostbyname(const char *host);
#define gethostbyname mingw_gethostbyname