From 55461b7605a62af041f478b94af740ad3117b293 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Thu, 7 May 2015 18:27:01 -0400 Subject: [PATCH] update xbox one profile --- .../Playback/BaseStreamingService.cs | 4 + MediaBrowser.Dlna/Profiles/XboxOneProfile.cs | 2 +- MediaBrowser.Dlna/Profiles/Xml/Xbox One.xml | 2 +- MediaBrowser.Dlna/Ssdp/Datagram.cs | 83 ++++++++++++------- .../Api/PackageCreator.cs | 2 +- .../MediaBrowser.WebDashboard.csproj | 3 - 6 files changed, 61 insertions(+), 35 deletions(-) diff --git a/MediaBrowser.Api/Playback/BaseStreamingService.cs b/MediaBrowser.Api/Playback/BaseStreamingService.cs index 34fb29b94a..5e06ab1d00 100644 --- a/MediaBrowser.Api/Playback/BaseStreamingService.cs +++ b/MediaBrowser.Api/Playback/BaseStreamingService.cs @@ -1086,6 +1086,10 @@ namespace MediaBrowser.Api.Playback } } } + catch (ObjectDisposedException) + { + // Don't spam the log. This doesn't seem to throw in windows, but sometimes under linux + } catch (Exception ex) { Logger.ErrorException("Error reading ffmpeg log", ex); diff --git a/MediaBrowser.Dlna/Profiles/XboxOneProfile.cs b/MediaBrowser.Dlna/Profiles/XboxOneProfile.cs index 4c3b049bdd..b78b5df0cb 100644 --- a/MediaBrowser.Dlna/Profiles/XboxOneProfile.cs +++ b/MediaBrowser.Dlna/Profiles/XboxOneProfile.cs @@ -14,7 +14,7 @@ namespace MediaBrowser.Dlna.Profiles Identification = new DeviceIdentification { - FriendlyName = "XboxOne", + ModelName = "Xbox One", Headers = new[] { diff --git a/MediaBrowser.Dlna/Profiles/Xml/Xbox One.xml b/MediaBrowser.Dlna/Profiles/Xml/Xbox One.xml index 1aa2b91982..e1faea150f 100644 --- a/MediaBrowser.Dlna/Profiles/Xml/Xbox One.xml +++ b/MediaBrowser.Dlna/Profiles/Xml/Xbox One.xml @@ -2,7 +2,7 @@ Xbox One - XboxOne + Xbox One diff --git a/MediaBrowser.Dlna/Ssdp/Datagram.cs b/MediaBrowser.Dlna/Ssdp/Datagram.cs index 4a0bb6f48b..cca59720f4 100644 --- a/MediaBrowser.Dlna/Ssdp/Datagram.cs +++ b/MediaBrowser.Dlna/Ssdp/Datagram.cs @@ -29,32 +29,43 @@ namespace MediaBrowser.Dlna.Ssdp public void Send() { var msg = Encoding.ASCII.GetBytes(Message); - try - { - var client = CreateSocket(); - if (FromEndPoint != null) + var socket = CreateSocket(); + + if (socket == null) + { + return; + } + + if (FromEndPoint != null) + { + try { - try + socket.Bind(FromEndPoint); + } + catch (Exception ex) + { + if (EnableDebugLogging) { - client.Bind(FromEndPoint); + _logger.ErrorException("Error binding datagram socket", ex); } - catch (Exception ex) + + if (!IgnoreBindFailure) { - if (EnableDebugLogging) - { - _logger.ErrorException("Error binding datagram socket", ex); - } - - if (!IgnoreBindFailure) throw; + CloseSocket(socket, false); + + return; } } + } - client.BeginSendTo(msg, 0, msg.Length, SocketFlags.None, ToEndPoint, result => + try + { + socket.BeginSendTo(msg, 0, msg.Length, SocketFlags.None, ToEndPoint, result => { try { - client.EndSend(result); + socket.EndSend(result); } catch (Exception ex) { @@ -65,32 +76,46 @@ namespace MediaBrowser.Dlna.Ssdp } finally { - try - { - client.Close(); - } - catch (Exception ex) - { - if (EnableDebugLogging) - { - _logger.ErrorException("Error closing datagram socket", ex); - } - } + CloseSocket(socket, true); } }, null); } catch (Exception ex) { _logger.ErrorException("Error sending Datagram to {0} from {1}: " + Message, ex, ToEndPoint, FromEndPoint == null ? "" : FromEndPoint.ToString()); + CloseSocket(socket, false); + } + } + + private void CloseSocket(Socket socket, bool logError) + { + try + { + socket.Close(); + } + catch (Exception ex) + { + if (logError && EnableDebugLogging) + { + _logger.ErrorException("Error closing datagram socket", ex); + } } } private Socket CreateSocket() { - var socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); + try + { + var socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); - socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true); - return socket; + socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true); + return socket; + } + catch (Exception ex) + { + _logger.ErrorException("Error creating socket", ex); + return null; + } } } } diff --git a/MediaBrowser.WebDashboard/Api/PackageCreator.cs b/MediaBrowser.WebDashboard/Api/PackageCreator.cs index 89ae4a9b61..761f7de7b3 100644 --- a/MediaBrowser.WebDashboard/Api/PackageCreator.cs +++ b/MediaBrowser.WebDashboard/Api/PackageCreator.cs @@ -281,7 +281,7 @@ namespace MediaBrowser.WebDashboard.Api await AppendResource(memoryStream, "thirdparty/jstree3.0.8/jstree.js", newLineBytes).ConfigureAwait(false); - await AppendResource(memoryStream, "thirdparty/fastclick.js", newLineBytes).ConfigureAwait(false); + //await AppendResource(memoryStream, "thirdparty/fastclick.js", newLineBytes).ConfigureAwait(false); await AppendResource(memoryStream, "thirdparty/headroom.js", newLineBytes).ConfigureAwait(false); await AppendLocalization(memoryStream, culture).ConfigureAwait(false); diff --git a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj index 7582daab91..3d6d2c8d91 100644 --- a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj +++ b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj @@ -363,9 +363,6 @@ PreserveNewest - - PreserveNewest - PreserveNewest