Merge pull request #2798 from JustAMan/fix-livetv-again

Make localhost LiveTV restreams always use plain HTTP port

(cherry picked from commit f502c89331)
Signed-off-by: Joshua M. Boniface <joshua@boniface.me>
This commit is contained in:
Joshua M. Boniface
2020-04-26 15:13:27 -04:00
parent 3af63bf439
commit a0b053e4a1
6 changed files with 27 additions and 16 deletions

View File

@@ -1422,7 +1422,7 @@ namespace Emby.Server.Implementations
public bool SupportsHttps => Certificate != null || ServerConfigurationManager.Configuration.IsBehindProxy;
public async Task<string> GetLocalApiUrl(CancellationToken cancellationToken)
public async Task<string> GetLocalApiUrl(CancellationToken cancellationToken, bool forceHttp = false)
{
try
{
@@ -1431,7 +1431,7 @@ namespace Emby.Server.Implementations
foreach (var address in addresses)
{
return GetLocalApiUrl(address);
return GetLocalApiUrl(address, forceHttp);
}
return null;
@@ -1461,7 +1461,7 @@ namespace Emby.Server.Implementations
}
/// <inheritdoc />
public string GetLocalApiUrl(IPAddress ipAddress)
public string GetLocalApiUrl(IPAddress ipAddress, bool forceHttp = false)
{
if (ipAddress.AddressFamily == AddressFamily.InterNetworkV6)
{
@@ -1471,20 +1471,21 @@ namespace Emby.Server.Implementations
str.CopyTo(span.Slice(1));
span[^1] = ']';
return GetLocalApiUrl(span);
return GetLocalApiUrl(span, forceHttp);
}
return GetLocalApiUrl(ipAddress.ToString());
return GetLocalApiUrl(ipAddress.ToString(), forceHttp);
}
/// <inheritdoc />
public string GetLocalApiUrl(ReadOnlySpan<char> host)
public string GetLocalApiUrl(ReadOnlySpan<char> host, bool forceHttp = false)
{
var url = new StringBuilder(64);
url.Append(EnableHttps ? "https://" : "http://")
bool useHttps = EnableHttps && !forceHttp;
url.Append(useHttps ? "https://" : "http://")
.Append(host)
.Append(':')
.Append(EnableHttps ? HttpsPort : HttpPort);
.Append(useHttps ? HttpsPort : HttpPort);
string baseUrl = ServerConfigurationManager.Configuration.BaseUrl;
if (baseUrl.Length != 0)