From b217ca4af0a450448eb5347b74616b444b784689 Mon Sep 17 00:00:00 2001 From: Malte Rosenbjerg Date: Mon, 1 Nov 2021 18:14:06 +0100 Subject: [PATCH] Ensure disposal of opened Image instances (#249) --- FFMpegCore/FFMpeg/FFMpeg.cs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/FFMpegCore/FFMpeg/FFMpeg.cs b/FFMpegCore/FFMpeg/FFMpeg.cs index 13563ce..8ee59b8 100644 --- a/FFMpegCore/FFMpeg/FFMpeg.cs +++ b/FFMpegCore/FFMpeg/FFMpeg.cs @@ -303,12 +303,13 @@ public static bool Join(string output, params string[] videos) public static bool JoinImageSequence(string output, double frameRate = 30, params ImageInfo[] images) { var tempFolderName = Path.Combine(GlobalFFOptions.Current.TemporaryFilesFolder, Guid.NewGuid().ToString()); - var temporaryImageFiles = images.Select((image, index) => + var temporaryImageFiles = images.Select((imageInfo, index) => { - FFMpegHelper.ConversionSizeExceptionCheck(Image.FromFile(image.FullName)); - var destinationPath = Path.Combine(tempFolderName, $"{index.ToString().PadLeft(9, '0')}{image.Extension}"); + using var image = Image.FromFile(imageInfo.FullName); + FFMpegHelper.ConversionSizeExceptionCheck(image); + var destinationPath = Path.Combine(tempFolderName, $"{index.ToString().PadLeft(9, '0')}{imageInfo.Extension}"); Directory.CreateDirectory(tempFolderName); - File.Copy(image.FullName, destinationPath); + File.Copy(imageInfo.FullName, destinationPath); return destinationPath; }).ToArray();