diff --git a/NzbDrone.Core/Tv/EpisodeService.cs b/NzbDrone.Core/Tv/EpisodeService.cs index e371af1df0..787b653fe7 100644 --- a/NzbDrone.Core/Tv/EpisodeService.cs +++ b/NzbDrone.Core/Tv/EpisodeService.cs @@ -164,7 +164,7 @@ public void InsertMany(List episodes) public void UpdateMany(List episodes) { - _episodeRepository.InsertMany(episodes); + _episodeRepository.UpdateMany(episodes); } public void HandleAsync(SeriesDeletedEvent message) diff --git a/NzbDrone.Core/Tv/RefreshSeriesService.cs b/NzbDrone.Core/Tv/RefreshSeriesService.cs index b8984aec13..ef299c3f97 100644 --- a/NzbDrone.Core/Tv/RefreshSeriesService.cs +++ b/NzbDrone.Core/Tv/RefreshSeriesService.cs @@ -99,13 +99,9 @@ private void RefreshEpisodeInfo(Series series, List remoteEpisodes) { _logger.Trace("Updating info for [{0}] - S{1:00}E{2:00}", series.Title, episode.SeasonNumber, episode.EpisodeNumber); - var episodeToUpdate = seriesEpisodes.SingleOrDefault(e => e.TvDbEpisodeId == episode.TvDbEpisodeId); - - //not found, try using season/episode number - if (episodeToUpdate == null) - { - episodeToUpdate = seriesEpisodes.SingleOrDefault(e => e.SeasonNumber == episode.SeasonNumber && e.EpisodeNumber == episode.EpisodeNumber); - } + var episodeToUpdate = seriesEpisodes.SingleOrDefault(e => + e.TvDbEpisodeId == episode.TvDbEpisodeId || + (e.SeasonNumber == episode.SeasonNumber && e.EpisodeNumber == episode.EpisodeNumber)); if (episodeToUpdate == null) {