From ff8ac16e235ddf58c9cb3477e8a9315d8cbb24ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wies=C5=82aw=20=C5=A0olt=C3=A9s?= Date: Fri, 5 Aug 2016 20:11:58 +0200 Subject: [PATCH] Fix multiple figure cairo path --- .../Avalonia.Cairo/Media/StreamGeometryContextImpl.cs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/Gtk/Avalonia.Cairo/Media/StreamGeometryContextImpl.cs b/src/Gtk/Avalonia.Cairo/Media/StreamGeometryContextImpl.cs index 1938d7e49e..0aca4b0b33 100644 --- a/src/Gtk/Avalonia.Cairo/Media/StreamGeometryContextImpl.cs +++ b/src/Gtk/Avalonia.Cairo/Media/StreamGeometryContextImpl.cs @@ -91,9 +91,6 @@ namespace Avalonia.Cairo.Media { if (isClosed) _context.ClosePath (); - - Path = _context.CopyPath (); - Bounds = _context.FillExtents ().ToAvalonia (); } } @@ -105,7 +102,13 @@ namespace Avalonia.Cairo.Media public void Dispose() { - _context.Dispose (); + if (this.Path == null) + { + Path = _context.CopyPath(); + Bounds = _context.FillExtents().ToAvalonia(); + } + + _context.Dispose (); _surf.Dispose (); } }