From 8d2a257a37cd55531755fd7d7007cd9b20bb3502 Mon Sep 17 00:00:00 2001 From: Jordi Mas i Hernandez Date: Thu, 11 Nov 2004 18:39:25 +0000 Subject: [PATCH] calls GdiplusShutdown to propery signal GDI+ termination svn path=/trunk/mcs/; revision=36016 --- mcs/class/System.Drawing/System.Drawing/ChangeLog | 5 +++++ mcs/class/System.Drawing/System.Drawing/gdipFunctions.cs | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/mcs/class/System.Drawing/System.Drawing/ChangeLog b/mcs/class/System.Drawing/System.Drawing/ChangeLog index f404f03ab8f..e5605567cb2 100644 --- a/mcs/class/System.Drawing/System.Drawing/ChangeLog +++ b/mcs/class/System.Drawing/System.Drawing/ChangeLog @@ -1,3 +1,8 @@ +2004-10-27 Jordi Mas i Hernandez + + * gdipFunctions.cs: calls GdiplusShutdown to propery signal GDI+ + termination + 2004-11-03 Miguel de Icaza * TextureBrush.cs (Clone): While cloning, it is not enough to let diff --git a/mcs/class/System.Drawing/System.Drawing/gdipFunctions.cs b/mcs/class/System.Drawing/System.Drawing/gdipFunctions.cs index b2f2c057602..5f9e0d9ade9 100644 --- a/mcs/class/System.Drawing/System.Drawing/gdipFunctions.cs +++ b/mcs/class/System.Drawing/System.Drawing/gdipFunctions.cs @@ -56,11 +56,18 @@ namespace System.Drawing static internal extern void GdiplusShutdown(ref ulong token); static ulong GdiPlusToken; + + static void ProcessExit (object sender, EventArgs e) + { + GdiplusShutdown (ref GdiPlusToken); + } + static GDIPlus () { GdiplusStartupInput input = GdiplusStartupInput.MakeGdiplusStartupInput(); GdiplusStartupOutput output = GdiplusStartupOutput.MakeGdiplusStartupOutput(); GdiplusStartup (ref GdiPlusToken, ref input, ref output); + AppDomain.CurrentDomain.ProcessExit += new EventHandler (ProcessExit); } // Copies a Ptr to an array of Points and releases the memory -- 2.25.1