diff options
Diffstat (limited to '')
| -rw-r--r-- | ui-shared.c | 19 | 
1 files changed, 12 insertions, 7 deletions
| diff --git a/ui-shared.c b/ui-shared.c index 4818e70..c23bc75 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -38,14 +38,19 @@ char *cgit_hosturl()  {  	char *host, *port; -	host = getenv("SERVER_NAME"); -	if (!host) -		return NULL; -	port = getenv("SERVER_PORT"); -	if (port && atoi(port) != 80) -		host = xstrdup(fmt("%s:%d", host, atoi(port))); -	else +	host = getenv("HTTP_HOST"); +	if (host) {  		host = xstrdup(host); +	} else { +		host = getenv("SERVER_NAME"); +		if (!host) +			return NULL; +		port = getenv("SERVER_PORT"); +		if (port && atoi(port) != 80) +			host = xstrdup(fmt("%s:%d", host, atoi(port))); +		else +			host = xstrdup(host); +	}  	return host;  } | 
