diff --git a/MediaBrowser.Dlna/Ssdp/SsdpHandler.cs b/MediaBrowser.Dlna/Ssdp/SsdpHandler.cs index d4cfd284a3..6159b18f0f 100644 --- a/MediaBrowser.Dlna/Ssdp/SsdpHandler.cs +++ b/MediaBrowser.Dlna/Ssdp/SsdpHandler.cs @@ -88,24 +88,21 @@ namespace MediaBrowser.Dlna.Ssdp private async void OnMessageReceived(SsdpMessageEventArgs args) { - if (string.Equals(args.Method, "M-SEARCH", StringComparison.OrdinalIgnoreCase)) - { - var headers = args.Headers; + var headers = args.Headers; + string st; + if (string.Equals(args.Method, "M-SEARCH", StringComparison.OrdinalIgnoreCase) && headers.TryGetValue("st", out st)) + { TimeSpan delay = GetSearchDelay(headers); - + if (_config.GetDlnaConfiguration().EnableDebugLogging) { _logger.Debug("Delaying search response by {0} seconds", delay.TotalSeconds); } - + await Task.Delay(delay).ConfigureAwait(false); - string st; - if (headers.TryGetValue("st", out st)) - { - RespondToSearch(args.EndPoint, st); - } + RespondToSearch(args.EndPoint, st); } EventHelper.FireEventIfNotNull(MessageReceived, this, args, _logger);