diff --git a/MediaBrowser.Server.Implementations/Library/SearchEngine.cs b/MediaBrowser.Server.Implementations/Library/SearchEngine.cs index bd845ef4a7..071031b25b 100644 --- a/MediaBrowser.Server.Implementations/Library/SearchEngine.cs +++ b/MediaBrowser.Server.Implementations/Library/SearchEngine.cs @@ -1,5 +1,6 @@ using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Model.Logging; using MediaBrowser.Model.Querying; @@ -105,7 +106,7 @@ namespace MediaBrowser.Server.Implementations.Library if (query.IncludeMedia) { // Add search hints based on item name - hints.AddRange(items.Where(i => !string.IsNullOrWhiteSpace(i.Name)).Select(item => + hints.AddRange(items.Where(i => !string.IsNullOrWhiteSpace(i.Name) && IncludeInSearch(i)).Select(item => { var index = GetIndex(item.Name, searchTerm, terms); @@ -289,6 +290,20 @@ namespace MediaBrowser.Server.Implementations.Library return Task.FromResult(returnValue); } + private bool IncludeInSearch(BaseItem item) + { + var episode = item as Episode; + + if (episode != null) + { + if (episode.IsVirtualUnaired || episode.IsMissingEpisode) + { + return false; + } + } + return true; + } + /// /// Gets the index. ///