aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs')
-rw-r--r--MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs15
1 files changed, 9 insertions, 6 deletions
diff --git a/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs b/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs
index d099813040..39bd87e96b 100644
--- a/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs
+++ b/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs
@@ -8,6 +8,7 @@ using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
+using System.Threading.Tasks;
using System.Xml;
using Jellyfin.Extensions;
using MediaBrowser.Common.Extensions;
@@ -180,7 +181,7 @@ namespace MediaBrowser.XbmcMetadata.Savers
}
/// <inheritdoc />
- public void Save(BaseItem item, CancellationToken cancellationToken)
+ public async Task SaveAsync(BaseItem item, CancellationToken cancellationToken)
{
var path = GetSavePath(item);
@@ -192,11 +193,11 @@ namespace MediaBrowser.XbmcMetadata.Savers
cancellationToken.ThrowIfCancellationRequested();
- SaveToFile(memoryStream, path);
+ await SaveToFileAsync(memoryStream, path).ConfigureAwait(false);
}
}
- private void SaveToFile(Stream stream, string path)
+ private async Task SaveToFileAsync(Stream stream, string path)
{
var directory = Path.GetDirectoryName(path) ?? throw new ArgumentException($"Provided path ({path}) is not valid.", nameof(path));
Directory.CreateDirectory(directory);
@@ -209,12 +210,14 @@ namespace MediaBrowser.XbmcMetadata.Savers
Mode = FileMode.Create,
Access = FileAccess.Write,
Share = FileShare.None,
- PreallocationSize = stream.Length
+ PreallocationSize = stream.Length,
+ Options = FileOptions.Asynchronous
};
- using (var filestream = new FileStream(path, fileStreamOptions))
+ var filestream = new FileStream(path, fileStreamOptions);
+ await using (filestream.ConfigureAwait(false))
{
- stream.CopyTo(filestream);
+ await stream.CopyToAsync(filestream).ConfigureAwait(false);
}
if (ConfigurationManager.Configuration.SaveMetadataHidden)