diff --git a/src/NzbDrone.Core/Download/TrackedDownloads/TrackedDownloadService.cs b/src/NzbDrone.Core/Download/TrackedDownloads/TrackedDownloadService.cs index 932996f90..a6138164a 100644 --- a/src/NzbDrone.Core/Download/TrackedDownloads/TrackedDownloadService.cs +++ b/src/NzbDrone.Core/Download/TrackedDownloads/TrackedDownloadService.cs @@ -56,18 +56,21 @@ public void UpdateBookCache(int bookId) { var updateCacheItems = _cache.Values.Where(x => x.RemoteBook != null && x.RemoteBook.Books.Any(a => a.Id == bookId)).ToList(); - foreach (var item in updateCacheItems) + if (updateCacheItems.Any()) { - var parsedBookInfo = Parser.Parser.ParseBookTitle(item.DownloadItem.Title); - item.RemoteBook = null; - - if (parsedBookInfo != null) + foreach (var item in updateCacheItems) { - item.RemoteBook = _parsingService.Map(parsedBookInfo); - } - } + var parsedBookInfo = Parser.Parser.ParseBookTitle(item.DownloadItem.Title); + item.RemoteBook = null; - _eventAggregator.PublishEvent(new TrackedDownloadRefreshedEvent(GetTrackedDownloads())); + if (parsedBookInfo != null) + { + item.RemoteBook = _parsingService.Map(parsedBookInfo); + } + } + + _eventAggregator.PublishEvent(new TrackedDownloadRefreshedEvent(GetTrackedDownloads())); + } } public void StopTracking(string downloadId)