Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono-addins.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Hutchinson <m.j.hutchinson@gmail.com>2013-06-21 05:09:00 +0400
committerMichael Hutchinson <m.j.hutchinson@gmail.com>2013-06-21 05:09:00 +0400
commit84e5359188f526d12fe3624b611e0858a3d7d797 (patch)
treebe6f13f7113c3db2fe7dc66d6ca56a5b674fd518 /Mono.Addins.Gui
parentbdd6b821743623f8b3b3108e7c75ca3df2ed6a4c (diff)
Fix a Cairo.LinearGradient leak
Diffstat (limited to 'Mono.Addins.Gui')
-rw-r--r--Mono.Addins.Gui/Mono.Addins.Gui/HeaderBox.cs18
1 files changed, 10 insertions, 8 deletions
diff --git a/Mono.Addins.Gui/Mono.Addins.Gui/HeaderBox.cs b/Mono.Addins.Gui/Mono.Addins.Gui/HeaderBox.cs
index 7336f99..487da63 100644
--- a/Mono.Addins.Gui/Mono.Addins.Gui/HeaderBox.cs
+++ b/Mono.Addins.Gui/Mono.Addins.Gui/HeaderBox.cs
@@ -138,14 +138,16 @@ namespace Mono.Addins.Gui
cr.RelLineTo (-rect.Width, 0);
cr.RelLineTo (0, -rect.Height);
cr.ClosePath ();
- Cairo.Gradient pat = new Cairo.LinearGradient (rect.X, rect.Y, rect.X, rect.Y + rect.Height - 1);
- Cairo.Color color1 = gcol;
- pat.AddColorStop (0, color1);
- gcol.L -= 0.1;
- if (gcol.L < 0) gcol.L = 0;
- pat.AddColorStop (1, gcol);
- cr.Pattern = pat;
- cr.FillPreserve ();
+ using (Cairo.Gradient pat = new Cairo.LinearGradient (rect.X, rect.Y, rect.X, rect.Y + rect.Height - 1)) {
+ Cairo.Color color1 = gcol;
+ pat.AddColorStop (0, color1);
+ gcol.L -= 0.1;
+ if (gcol.L < 0)
+ gcol.L = 0;
+ pat.AddColorStop (1, gcol);
+ cr.Pattern = pat;
+ cr.FillPreserve ();
+ }
}
}