mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-11-03 19:17:24 -05:00 
			
		
		
		
	Fix warning: The nullable warning suppression expression is redundant (#2149)
This commit is contained in:
		
							parent
							
								
									531efc345a
								
							
						
					
					
						commit
						7c282ec369
					
				@ -51,7 +51,7 @@ namespace Jellyfin.Api.Auth.SyncPlayAccessPolicy
 | 
				
			|||||||
            {
 | 
					            {
 | 
				
			||||||
                if (user.SyncPlayAccess == SyncPlayUserAccessType.CreateAndJoinGroups
 | 
					                if (user.SyncPlayAccess == SyncPlayUserAccessType.CreateAndJoinGroups
 | 
				
			||||||
                    || user.SyncPlayAccess == SyncPlayUserAccessType.JoinGroups
 | 
					                    || user.SyncPlayAccess == SyncPlayUserAccessType.JoinGroups
 | 
				
			||||||
                    || _syncPlayManager.IsUserActive(userId!.Value))
 | 
					                    || _syncPlayManager.IsUserActive(userId.Value))
 | 
				
			||||||
                {
 | 
					                {
 | 
				
			||||||
                    context.Succeed(requirement);
 | 
					                    context.Succeed(requirement);
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
@ -85,7 +85,7 @@ namespace Jellyfin.Api.Auth.SyncPlayAccessPolicy
 | 
				
			|||||||
            }
 | 
					            }
 | 
				
			||||||
            else if (requirement.RequiredAccess == SyncPlayAccessRequirementType.IsInGroup)
 | 
					            else if (requirement.RequiredAccess == SyncPlayAccessRequirementType.IsInGroup)
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                if (_syncPlayManager.IsUserActive(userId!.Value))
 | 
					                if (_syncPlayManager.IsUserActive(userId.Value))
 | 
				
			||||||
                {
 | 
					                {
 | 
				
			||||||
                    context.Succeed(requirement);
 | 
					                    context.Succeed(requirement);
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
				
			|||||||
@ -53,7 +53,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
            if (enableInMainMenu.HasValue)
 | 
					            if (enableInMainMenu.HasValue)
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                configPages = configPages.Where(p => p!.EnableInMainMenu == enableInMainMenu.Value).ToList();
 | 
					                configPages = configPages.Where(p => p.EnableInMainMenu == enableInMainMenu.Value).ToList();
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            return configPages;
 | 
					            return configPages;
 | 
				
			||||||
 | 
				
			|||||||
@ -1709,7 +1709,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
                return Task.CompletedTask;
 | 
					                return Task.CompletedTask;
 | 
				
			||||||
            });
 | 
					            });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            return FileStreamResponseHelpers.GetStaticFileResult(segmentPath, MimeTypes.GetMimeType(segmentPath)!, false, HttpContext);
 | 
					            return FileStreamResponseHelpers.GetStaticFileResult(segmentPath, MimeTypes.GetMimeType(segmentPath), false, HttpContext);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        private long GetEndPositionTicks(StreamState state, int requestedIndex)
 | 
					        private long GetEndPositionTicks(StreamState state, int requestedIndex)
 | 
				
			||||||
 | 
				
			|||||||
@ -69,7 +69,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
                return BadRequest("Invalid segment.");
 | 
					                return BadRequest("Invalid segment.");
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            return FileStreamResponseHelpers.GetStaticFileResult(file, MimeTypes.GetMimeType(file)!, false, HttpContext);
 | 
					            return FileStreamResponseHelpers.GetStaticFileResult(file, MimeTypes.GetMimeType(file), false, HttpContext);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        /// <summary>
 | 
					        /// <summary>
 | 
				
			||||||
@ -186,7 +186,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
                return Task.CompletedTask;
 | 
					                return Task.CompletedTask;
 | 
				
			||||||
            });
 | 
					            });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            return FileStreamResponseHelpers.GetStaticFileResult(path, MimeTypes.GetMimeType(path)!, false, HttpContext);
 | 
					            return FileStreamResponseHelpers.GetStaticFileResult(path, MimeTypes.GetMimeType(path), false, HttpContext);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -80,7 +80,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
                : null;
 | 
					                : null;
 | 
				
			||||||
            var dtoOptions = new DtoOptions { Fields = fields }
 | 
					            var dtoOptions = new DtoOptions { Fields = fields }
 | 
				
			||||||
                .AddClientFields(Request)
 | 
					                .AddClientFields(Request)
 | 
				
			||||||
                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes!);
 | 
					                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes);
 | 
				
			||||||
            var items = _musicManager.GetInstantMixFromItem(item, user, dtoOptions);
 | 
					            var items = _musicManager.GetInstantMixFromItem(item, user, dtoOptions);
 | 
				
			||||||
            return GetResult(items, user, limit, dtoOptions);
 | 
					            return GetResult(items, user, limit, dtoOptions);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
@ -116,7 +116,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
                : null;
 | 
					                : null;
 | 
				
			||||||
            var dtoOptions = new DtoOptions { Fields = fields }
 | 
					            var dtoOptions = new DtoOptions { Fields = fields }
 | 
				
			||||||
                .AddClientFields(Request)
 | 
					                .AddClientFields(Request)
 | 
				
			||||||
                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes!);
 | 
					                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes);
 | 
				
			||||||
            var items = _musicManager.GetInstantMixFromItem(album, user, dtoOptions);
 | 
					            var items = _musicManager.GetInstantMixFromItem(album, user, dtoOptions);
 | 
				
			||||||
            return GetResult(items, user, limit, dtoOptions);
 | 
					            return GetResult(items, user, limit, dtoOptions);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
@ -152,7 +152,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
                : null;
 | 
					                : null;
 | 
				
			||||||
            var dtoOptions = new DtoOptions { Fields = fields }
 | 
					            var dtoOptions = new DtoOptions { Fields = fields }
 | 
				
			||||||
                .AddClientFields(Request)
 | 
					                .AddClientFields(Request)
 | 
				
			||||||
                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes!);
 | 
					                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes);
 | 
				
			||||||
            var items = _musicManager.GetInstantMixFromItem(playlist, user, dtoOptions);
 | 
					            var items = _musicManager.GetInstantMixFromItem(playlist, user, dtoOptions);
 | 
				
			||||||
            return GetResult(items, user, limit, dtoOptions);
 | 
					            return GetResult(items, user, limit, dtoOptions);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
@ -187,7 +187,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
                : null;
 | 
					                : null;
 | 
				
			||||||
            var dtoOptions = new DtoOptions { Fields = fields }
 | 
					            var dtoOptions = new DtoOptions { Fields = fields }
 | 
				
			||||||
                .AddClientFields(Request)
 | 
					                .AddClientFields(Request)
 | 
				
			||||||
                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes!);
 | 
					                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes);
 | 
				
			||||||
            var items = _musicManager.GetInstantMixFromGenres(new[] { name }, user, dtoOptions);
 | 
					            var items = _musicManager.GetInstantMixFromGenres(new[] { name }, user, dtoOptions);
 | 
				
			||||||
            return GetResult(items, user, limit, dtoOptions);
 | 
					            return GetResult(items, user, limit, dtoOptions);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
@ -223,7 +223,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
                : null;
 | 
					                : null;
 | 
				
			||||||
            var dtoOptions = new DtoOptions { Fields = fields }
 | 
					            var dtoOptions = new DtoOptions { Fields = fields }
 | 
				
			||||||
                .AddClientFields(Request)
 | 
					                .AddClientFields(Request)
 | 
				
			||||||
                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes!);
 | 
					                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes);
 | 
				
			||||||
            var items = _musicManager.GetInstantMixFromItem(item, user, dtoOptions);
 | 
					            var items = _musicManager.GetInstantMixFromItem(item, user, dtoOptions);
 | 
				
			||||||
            return GetResult(items, user, limit, dtoOptions);
 | 
					            return GetResult(items, user, limit, dtoOptions);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
@ -259,7 +259,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
                : null;
 | 
					                : null;
 | 
				
			||||||
            var dtoOptions = new DtoOptions { Fields = fields }
 | 
					            var dtoOptions = new DtoOptions { Fields = fields }
 | 
				
			||||||
                .AddClientFields(Request)
 | 
					                .AddClientFields(Request)
 | 
				
			||||||
                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes!);
 | 
					                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes);
 | 
				
			||||||
            var items = _musicManager.GetInstantMixFromItem(item, user, dtoOptions);
 | 
					            var items = _musicManager.GetInstantMixFromItem(item, user, dtoOptions);
 | 
				
			||||||
            return GetResult(items, user, limit, dtoOptions);
 | 
					            return GetResult(items, user, limit, dtoOptions);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
@ -332,7 +332,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
                : null;
 | 
					                : null;
 | 
				
			||||||
            var dtoOptions = new DtoOptions { Fields = fields }
 | 
					            var dtoOptions = new DtoOptions { Fields = fields }
 | 
				
			||||||
                .AddClientFields(Request)
 | 
					                .AddClientFields(Request)
 | 
				
			||||||
                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes!);
 | 
					                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes);
 | 
				
			||||||
            var items = _musicManager.GetInstantMixFromItem(item, user, dtoOptions);
 | 
					            var items = _musicManager.GetInstantMixFromItem(item, user, dtoOptions);
 | 
				
			||||||
            return GetResult(items, user, limit, dtoOptions);
 | 
					            return GetResult(items, user, limit, dtoOptions);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
				
			|||||||
@ -287,7 +287,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
            if ((recursive.HasValue && recursive.Value) || ids.Length != 0 || item is not UserRootFolder)
 | 
					            if ((recursive.HasValue && recursive.Value) || ids.Length != 0 || item is not UserRootFolder)
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                var query = new InternalItemsQuery(user!)
 | 
					                var query = new InternalItemsQuery(user)
 | 
				
			||||||
                {
 | 
					                {
 | 
				
			||||||
                    IsPlayed = isPlayed,
 | 
					                    IsPlayed = isPlayed,
 | 
				
			||||||
                    MediaTypes = mediaTypes,
 | 
					                    MediaTypes = mediaTypes,
 | 
				
			||||||
 | 
				
			|||||||
@ -184,7 +184,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
                        audioStreamIndex,
 | 
					                        audioStreamIndex,
 | 
				
			||||||
                        subtitleStreamIndex,
 | 
					                        subtitleStreamIndex,
 | 
				
			||||||
                        maxAudioChannels,
 | 
					                        maxAudioChannels,
 | 
				
			||||||
                        info!.PlaySessionId!,
 | 
					                        info.PlaySessionId!,
 | 
				
			||||||
                        userId ?? Guid.Empty,
 | 
					                        userId ?? Guid.Empty,
 | 
				
			||||||
                        enableDirectPlay.Value,
 | 
					                        enableDirectPlay.Value,
 | 
				
			||||||
                        enableDirectStream.Value,
 | 
					                        enableDirectStream.Value,
 | 
				
			||||||
 | 
				
			|||||||
@ -88,7 +88,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
        {
 | 
					        {
 | 
				
			||||||
            var options = new DtoOptions { Fields = fields }
 | 
					            var options = new DtoOptions { Fields = fields }
 | 
				
			||||||
                .AddClientFields(Request)
 | 
					                .AddClientFields(Request)
 | 
				
			||||||
                .AddAdditionalDtoOptions(enableImges, enableUserData, imageTypeLimit, enableImageTypes!);
 | 
					                .AddAdditionalDtoOptions(enableImges, enableUserData, imageTypeLimit, enableImageTypes);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            var result = _tvSeriesManager.GetNextUp(
 | 
					            var result = _tvSeriesManager.GetNextUp(
 | 
				
			||||||
                new NextUpQuery
 | 
					                new NextUpQuery
 | 
				
			||||||
@ -153,7 +153,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
            var options = new DtoOptions { Fields = fields }
 | 
					            var options = new DtoOptions { Fields = fields }
 | 
				
			||||||
                .AddClientFields(Request)
 | 
					                .AddClientFields(Request)
 | 
				
			||||||
                .AddAdditionalDtoOptions(enableImges, enableUserData, imageTypeLimit, enableImageTypes!);
 | 
					                .AddAdditionalDtoOptions(enableImges, enableUserData, imageTypeLimit, enableImageTypes);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            var itemsResult = _libraryManager.GetItemList(new InternalItemsQuery(user)
 | 
					            var itemsResult = _libraryManager.GetItemList(new InternalItemsQuery(user)
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
@ -223,7 +223,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
            var dtoOptions = new DtoOptions { Fields = fields }
 | 
					            var dtoOptions = new DtoOptions { Fields = fields }
 | 
				
			||||||
                .AddClientFields(Request)
 | 
					                .AddClientFields(Request)
 | 
				
			||||||
                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes!);
 | 
					                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if (seasonId.HasValue) // Season id was supplied. Get episodes by season id.
 | 
					            if (seasonId.HasValue) // Season id was supplied. Get episodes by season id.
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
@ -350,7 +350,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
            var dtoOptions = new DtoOptions { Fields = fields }
 | 
					            var dtoOptions = new DtoOptions { Fields = fields }
 | 
				
			||||||
                .AddClientFields(Request)
 | 
					                .AddClientFields(Request)
 | 
				
			||||||
                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes!);
 | 
					                .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            var returnItems = _dtoService.GetBaseItemDtos(seasons, dtoOptions, user);
 | 
					            var returnItems = _dtoService.GetBaseItemDtos(seasons, dtoOptions, user);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -155,7 +155,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
                        null,
 | 
					                        null,
 | 
				
			||||||
                        null,
 | 
					                        null,
 | 
				
			||||||
                        maxAudioChannels,
 | 
					                        maxAudioChannels,
 | 
				
			||||||
                        info!.PlaySessionId!,
 | 
					                        info.PlaySessionId!,
 | 
				
			||||||
                        userId ?? Guid.Empty,
 | 
					                        userId ?? Guid.Empty,
 | 
				
			||||||
                        true,
 | 
					                        true,
 | 
				
			||||||
                        true,
 | 
					                        true,
 | 
				
			||||||
 | 
				
			|||||||
@ -461,7 +461,7 @@ namespace Jellyfin.Api.Controllers
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
                var liveStream = new ProgressiveFileStream(liveStreamInfo.GetStream());
 | 
					                var liveStream = new ProgressiveFileStream(liveStreamInfo.GetStream());
 | 
				
			||||||
                // TODO (moved from MediaBrowser.Api): Don't hardcode contentType
 | 
					                // TODO (moved from MediaBrowser.Api): Don't hardcode contentType
 | 
				
			||||||
                return File(liveStream, MimeTypes.GetMimeType("file.ts")!);
 | 
					                return File(liveStream, MimeTypes.GetMimeType("file.ts"));
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            // Static remote stream
 | 
					            // Static remote stream
 | 
				
			||||||
 | 
				
			|||||||
@ -86,8 +86,8 @@ namespace Jellyfin.Api.Helpers
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
            DeleteEncodedMediaCache();
 | 
					            DeleteEncodedMediaCache();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            sessionManager!.PlaybackProgress += OnPlaybackProgress;
 | 
					            sessionManager.PlaybackProgress += OnPlaybackProgress;
 | 
				
			||||||
            sessionManager!.PlaybackStart += OnPlaybackProgress;
 | 
					            sessionManager.PlaybackStart += OnPlaybackProgress;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        /// <summary>
 | 
					        /// <summary>
 | 
				
			||||||
@ -878,8 +878,8 @@ namespace Jellyfin.Api.Helpers
 | 
				
			|||||||
            if (disposing)
 | 
					            if (disposing)
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                _loggerFactory.Dispose();
 | 
					                _loggerFactory.Dispose();
 | 
				
			||||||
                _sessionManager!.PlaybackProgress -= OnPlaybackProgress;
 | 
					                _sessionManager.PlaybackProgress -= OnPlaybackProgress;
 | 
				
			||||||
                _sessionManager!.PlaybackStart -= OnPlaybackProgress;
 | 
					                _sessionManager.PlaybackStart -= OnPlaybackProgress;
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -55,7 +55,7 @@ namespace Jellyfin.Api.Models.StreamingDtos
 | 
				
			|||||||
        /// <summary>
 | 
					        /// <summary>
 | 
				
			||||||
        /// Gets the video request.
 | 
					        /// Gets the video request.
 | 
				
			||||||
        /// </summary>
 | 
					        /// </summary>
 | 
				
			||||||
        public VideoRequestDto? VideoRequest => Request! as VideoRequestDto;
 | 
					        public VideoRequestDto? VideoRequest => Request as VideoRequestDto;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        /// <summary>
 | 
					        /// <summary>
 | 
				
			||||||
        /// Gets or sets the direct stream provicer.
 | 
					        /// Gets or sets the direct stream provicer.
 | 
				
			||||||
 | 
				
			|||||||
@ -27,7 +27,7 @@ namespace Jellyfin.Server.Implementations.Security
 | 
				
			|||||||
        {
 | 
					        {
 | 
				
			||||||
            if (requestContext.Request.HttpContext.Items.TryGetValue("AuthorizationInfo", out var cached) && cached != null)
 | 
					            if (requestContext.Request.HttpContext.Items.TryGetValue("AuthorizationInfo", out var cached) && cached != null)
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                return Task.FromResult((AuthorizationInfo)cached!); // Cache should never contain null
 | 
					                return Task.FromResult((AuthorizationInfo)cached); // Cache should never contain null
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            return GetAuthorization(requestContext);
 | 
					            return GetAuthorization(requestContext);
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user