فهرست منبع

add tuner error handling

Luke Pulverenti 9 سال پیش
والد
کامیت
de1495763f
1فایلهای تغییر یافته به همراه20 افزوده شده و 6 حذف شده
  1. 20 6
      MediaBrowser.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs

+ 20 - 6
MediaBrowser.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs

@@ -107,11 +107,18 @@ namespace MediaBrowser.Server.Implementations.LiveTv.TunerHosts
 
 
                 foreach (var host in hosts)
                 foreach (var host in hosts)
                 {
                 {
-                    var channels = await GetChannels(host, true, cancellationToken).ConfigureAwait(false);
+                    try
+                    {
+                        var channels = await GetChannels(host, true, cancellationToken).ConfigureAwait(false);
 
 
-                    if (channels.Any(i => string.Equals(i.Id, channelId, StringComparison.OrdinalIgnoreCase)))
+                        if (channels.Any(i => string.Equals(i.Id, channelId, StringComparison.OrdinalIgnoreCase)))
+                        {
+                            hostsWithChannel.Add(host);
+                        }
+                    }
+                    catch (Exception ex)
                     {
                     {
-                        hostsWithChannel.Add(host);
+                        Logger.Error("Error getting channels", ex);
                     }
                     }
                 }
                 }
 
 
@@ -172,11 +179,18 @@ namespace MediaBrowser.Server.Implementations.LiveTv.TunerHosts
                 {
                 {
                     if (string.IsNullOrWhiteSpace(streamId))
                     if (string.IsNullOrWhiteSpace(streamId))
                     {
                     {
-                        var channels = await GetChannels(host, true, cancellationToken).ConfigureAwait(false);
+                        try
+                        {
+                            var channels = await GetChannels(host, true, cancellationToken).ConfigureAwait(false);
 
 
-                        if (channels.Any(i => string.Equals(i.Id, channelId, StringComparison.OrdinalIgnoreCase)))
+                            if (channels.Any(i => string.Equals(i.Id, channelId, StringComparison.OrdinalIgnoreCase)))
+                            {
+                                hostsWithChannel.Add(host);
+                            }
+                        }
+                        catch (Exception ex)
                         {
                         {
-                            hostsWithChannel.Add(host);
+                            Logger.Error("Error getting channels", ex);
                         }
                         }
                     }
                     }
                     else if (streamId.StartsWith(host.Id, StringComparison.OrdinalIgnoreCase))
                     else if (streamId.StartsWith(host.Id, StringComparison.OrdinalIgnoreCase))