From a3dfb5502966a9c5cd9f67ecebc94a6633d5cec3 Mon Sep 17 00:00:00 2001
From: friendica <info@friendica.com>
Date: Sat, 30 Jun 2012 06:27:46 -0700
Subject: [PATCH] bug #437

---
 boot.php | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/boot.php b/boot.php
index aa016ef0c7..1b15eaa63f 100644
--- a/boot.php
+++ b/boot.php
@@ -352,6 +352,14 @@ if(! class_exists('App')) {
 
 			if(x($_SERVER,'SERVER_NAME')) {
 				$this->hostname = $_SERVER['SERVER_NAME'];
+				if(stristr($this->hostname,'xn--')) {
+					// PHP or webserver may have converted idn to punycode, so
+					// convert punycode back to utf-8
+					require_once('library/simplepie/idn/idna_convert.class.php');
+					$x = new idna_convert();
+					$this->hostname = $x->decode($s);
+				}
+
 				if(x($_SERVER,'SERVER_PORT') && $_SERVER['SERVER_PORT'] != 80 && $_SERVER['SERVER_PORT'] != 443)
 					$this->hostname .= ':' . $_SERVER['SERVER_PORT'];
 				/**