diff options
| author | Mike <github@barry.io> | 2015-03-25 21:30:26 -0400 |
|---|---|---|
| committer | Mike <github@barry.io> | 2015-03-25 21:30:26 -0400 |
| commit | a1a6366833cbf3624c5a84c7a2a4d74b635d5aef (patch) | |
| tree | 35591d4bf777b9e8f0a7d35ffb528defca0c06ca | |
| parent | 9f191a3598f8d1cc6764169943186987be33a707 (diff) | |
Fix null reference exception when awaiting null.
DynamicImageProvider:CreateImageAsync was not marked as async. When returning null the await BaseDynamicImageProvider:FetchToFileInternal would throw a null reference exception. An alternative solution would be to wrap the null return in Task.FromResult.
Object reference not set to an instance of an object.
System.NullReferenceException
at MediaBrowser.Server.Implementations.Photos.BaseDynamicImageProvider`1.<FetchToFileInternal>d__c.MoveNext() in c:\MediaBrowser\MediaBrowser.Server.Implementations\Photos\BaseDynamicImageProvider.cs:line 79
| -rw-r--r-- | MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs b/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs index b98dd2c49..d6a94210c 100644 --- a/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs +++ b/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs @@ -238,7 +238,7 @@ namespace MediaBrowser.Server.Implementations.UserViews return collectionStripViewTypes.Contains(view.ViewType ?? string.Empty); } - protected override Task<Stream> CreateImageAsync(IHasImages item, List<BaseItem> itemsWithImages, ImageType imageType, int imageIndex) + protected override async Task<Stream> CreateImageAsync(IHasImages item, List<BaseItem> itemsWithImages, ImageType imageType, int imageIndex) { var view = (UserView)item; if (imageType == ImageType.Primary && IsUsingCollectionStrip(view)) @@ -249,10 +249,10 @@ namespace MediaBrowser.Server.Implementations.UserViews } var stream = new StripCollageBuilder(ApplicationPaths).BuildThumbCollage(GetStripCollageImagePaths(itemsWithImages, view.ViewType), item.Name, 960, 540); - return Task.FromResult(stream); + return stream; } - return base.CreateImageAsync(item, itemsWithImages, imageType, imageIndex); + return await base.CreateImageAsync(item, itemsWithImages, imageType, imageIndex); } private IEnumerable<String> GetStripCollageImagePaths(IEnumerable<BaseItem> items, string viewType) |
