Skip to content

Commit 69375aa

Browse files
authored
Revert "Revert "Plug the WPF leak... maybe.""
1 parent 3dbbe65 commit 69375aa

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

Rubberduck.Core/UI/Converters/ImageSourceConverter.cs

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,19 @@ public abstract class ImageSourceConverter : IValueConverter
1212
{
1313
protected static ImageSource ToImageSource(Image source)
1414
{
15-
var ms = new MemoryStream();
15+
using (var ms = new MemoryStream())
16+
{
17+
((Bitmap) source).Save(ms, System.Drawing.Imaging.ImageFormat.Png);
18+
var image = new BitmapImage();
19+
image.BeginInit();
20+
image.CacheOption = BitmapCacheOption.OnLoad;
21+
ms.Seek(0, SeekOrigin.Begin);
22+
image.StreamSource = ms;
23+
image.EndInit();
24+
image.Freeze();
1625

17-
((Bitmap)source).Save(ms, System.Drawing.Imaging.ImageFormat.Png);
18-
var image = new BitmapImage();
19-
image.BeginInit();
20-
ms.Seek(0, SeekOrigin.Begin);
21-
image.StreamSource = ms;
22-
image.EndInit();
23-
image.Freeze();
24-
25-
return image;
26+
return image;
27+
}
2628
}
2729

2830
public abstract object Convert(object value, Type targetType, object parameter, CultureInfo culture);

0 commit comments

Comments
 (0)