Browse Source

Possible leaks

pull/901/head
Nikita Tsukanov 10 years ago
parent
commit
32d307f032
  1. 16
      src/Skia/Avalonia.Skia/DrawingContextImpl.cs

16
src/Skia/Avalonia.Skia/DrawingContextImpl.cs

@ -162,9 +162,9 @@ namespace Avalonia.Skia
var end = linearGradient.EndPoint.ToPixels(targetSize).ToSKPoint(); var end = linearGradient.EndPoint.ToPixels(targetSize).ToSKPoint();
// would be nice to cache these shaders possibly? // would be nice to cache these shaders possibly?
var shader = SKShader.CreateLinearGradient(start, end, stopColors, stopOffsets, tileMode); using (var shader = SKShader.CreateLinearGradient(start, end, stopColors, stopOffsets, tileMode))
paint.Shader = shader; paint.Shader = shader;
shader.Dispose();
} }
else else
{ {
@ -178,9 +178,9 @@ namespace Avalonia.Skia
//paint.setAlpha(128); //paint.setAlpha(128);
// would be nice to cache these shaders possibly? // would be nice to cache these shaders possibly?
var shader = SKShader.CreateRadialGradient(center, radius, stopColors, stopOffsets, tileMode); using (var shader = SKShader.CreateRadialGradient(center, radius, stopColors, stopOffsets, tileMode))
paint.Shader = shader; paint.Shader = shader;
shader.Dispose();
} }
} }
@ -209,8 +209,8 @@ namespace Avalonia.Skia
: tileBrush.TileMode == TileMode.FlipY || tileBrush.TileMode == TileMode.FlipXY : tileBrush.TileMode == TileMode.FlipY || tileBrush.TileMode == TileMode.FlipXY
? SKShaderTileMode.Mirror ? SKShaderTileMode.Mirror
: SKShaderTileMode.Repeat; : SKShaderTileMode.Repeat;
paint.Shader = SKShader.CreateBitmap(bitmap.Bitmap, tileX, tileY, translation); using (var shader = SKShader.CreateBitmap(bitmap.Bitmap, tileX, tileY, translation))
paint.Shader.Dispose(); paint.Shader = shader;
} }
return rv; return rv;

Loading…
Cancel
Save