{
var uriBuilder = new UriBuilder(inputUrl);
- var idnConverter = new IdnMapping();
- uriBuilder.Host = idnConverter.GetUnicode(uriBuilder.Host);
+ if (uriBuilder.Host != null)
+ {
+ var idnConverter = new IdnMapping();
+ uriBuilder.Host = idnConverter.GetUnicode(uriBuilder.Host);
+ }
return uriBuilder.Uri.ToString();
}
// Punycodeをデコードする
outputUrl = MyCommon.IDNDecode(outputUrl);
+ if (outputUrl == null)
+ return inputUrl;
// URL内で特殊な意味を持つ記号は元の文字に変換されることを避けるために二重エスケープする
// 参考: Firefoxの losslessDecodeURI() 関数