Do not update wan.dat if WAN IP has not changed

This commit is contained in:
Ivan-L 2017-01-09 00:02:12 +02:00
parent b738d560bf
commit b98ef8fac0

View File

@ -18,6 +18,7 @@ namespace Emby.Server.Implementations.Connect
public class ConnectEntryPoint : IServerEntryPoint
{
private ITimer _timer;
private IpAddressInfo _cachedIpAddress;
private readonly IHttpClient _httpClient;
private readonly IApplicationPaths _appPaths;
private readonly ILogger _logger;
@ -151,6 +152,12 @@ namespace Emby.Server.Implementations.Connect
private void CacheAddress(IpAddressInfo address)
{
if (_cachedIpAddress != null && _cachedIpAddress.Equals(address))
{
// no need to update the file if the address has not changed
return;
}
var path = CacheFilePath;
try
@ -164,6 +171,7 @@ namespace Emby.Server.Implementations.Connect
try
{
_fileSystem.WriteAllText(path, _encryption.EncryptString(address.ToString()), Encoding.UTF8);
_cachedIpAddress = address;
}
catch (Exception ex)
{
@ -184,6 +192,7 @@ namespace Emby.Server.Implementations.Connect
if (_networkManager.TryParseIpAddress(endpoint, out ipAddress))
{
_cachedIpAddress = ipAddress;
((ConnectManager)_connectManager).OnWanAddressResolved(ipAddress);
}
}