From 2dcb2f8a9f4be9ca69c050ce9ee94d647e8d5d5f Mon Sep 17 00:00:00 2001 From: Bond_009 Date: Sat, 22 Jan 2022 16:48:31 +0100 Subject: Ban the usage of Task.Result If the calling function can't be made async easily you can still use .GetAwaiter().GetResult(), which is way easier to find in the future --- Emby.Server.Implementations/Channels/ChannelManager.cs | 2 +- Emby.Server.Implementations/Emby.Server.Implementations.csproj | 4 ++++ Emby.Server.Implementations/LiveTv/LiveTvManager.cs | 8 ++++---- 3 files changed, 9 insertions(+), 5 deletions(-) (limited to 'Emby.Server.Implementations') diff --git a/Emby.Server.Implementations/Channels/ChannelManager.cs b/Emby.Server.Implementations/Channels/ChannelManager.cs index 548ebc3fc..a107e7a52 100644 --- a/Emby.Server.Implementations/Channels/ChannelManager.cs +++ b/Emby.Server.Implementations/Channels/ChannelManager.cs @@ -331,7 +331,7 @@ namespace Emby.Server.Implementations.Channels private Channel GetChannelEntity(IChannel channel) { - return GetChannel(GetInternalChannelId(channel.Name)) ?? GetChannel(channel, CancellationToken.None).Result; + return GetChannel(GetInternalChannelId(channel.Name)) ?? GetChannel(channel, CancellationToken.None).GetAwaiter().GetResult(); } private MediaSourceInfo[] GetSavedMediaSources(BaseItem item) diff --git a/Emby.Server.Implementations/Emby.Server.Implementations.csproj b/Emby.Server.Implementations/Emby.Server.Implementations.csproj index 1e09a98cf..d59db6aa7 100644 --- a/Emby.Server.Implementations/Emby.Server.Implementations.csproj +++ b/Emby.Server.Implementations/Emby.Server.Implementations.csproj @@ -55,6 +55,10 @@ + + all + runtime; build; native; contentfiles; analyzers + diff --git a/Emby.Server.Implementations/LiveTv/LiveTvManager.cs b/Emby.Server.Implementations/LiveTv/LiveTvManager.cs index 8d0f18d9b..6a9a3077c 100644 --- a/Emby.Server.Implementations/LiveTv/LiveTvManager.cs +++ b/Emby.Server.Implementations/LiveTv/LiveTvManager.cs @@ -915,21 +915,21 @@ namespace Emby.Server.Implementations.LiveTv programs.ToArray()); } - public QueryResult GetRecommendedPrograms(InternalItemsQuery query, DtoOptions options, CancellationToken cancellationToken) + public Task> GetRecommendedProgramsAsync(InternalItemsQuery query, DtoOptions options, CancellationToken cancellationToken) { if (!(query.IsAiring ?? false)) { - return GetPrograms(query, options, cancellationToken).Result; + return GetPrograms(query, options, cancellationToken); } RemoveFields(options); var internalResult = GetRecommendedProgramsInternal(query, options, cancellationToken); - return new QueryResult( + return Task.FromResult(new QueryResult( query.StartIndex, internalResult.TotalRecordCount, - _dtoService.GetBaseItemDtos(internalResult.Items, options, query.User)); + _dtoService.GetBaseItemDtos(internalResult.Items, options, query.User))); } private int GetRecommendationScore(LiveTvProgram program, User user, bool factorChannelWatchCount) -- cgit v1.2.3