fix (one off, so not really important) memory leak which happened if an application using XRCID() in event tables didn't initialize (and hence didn't shutdown) wx
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1782,6 +1782,17 @@ static void AddStdXRCID_Records()
|
|||||||
|
|
||||||
// --------------- module and globals -----------------------------
|
// --------------- module and globals -----------------------------
|
||||||
|
|
||||||
|
// normally we would do the cleanup from wxXmlResourceModule::OnExit() but it
|
||||||
|
// can happen that some XRC records have been created because of the use of
|
||||||
|
// XRCID() in event tables, which happens during static objects initialization,
|
||||||
|
// but then the application initialization failed and so the wx modules were
|
||||||
|
// neither initialized nor cleaned up -- this static object does the cleanup in
|
||||||
|
// this case
|
||||||
|
static struct wxXRCStaticCleanup
|
||||||
|
{
|
||||||
|
~wxXRCStaticCleanup() { CleanXRCID_Records(); }
|
||||||
|
} s_staticCleanup;
|
||||||
|
|
||||||
class wxXmlResourceModule: public wxModule
|
class wxXmlResourceModule: public wxModule
|
||||||
{
|
{
|
||||||
DECLARE_DYNAMIC_CLASS(wxXmlResourceModule)
|
DECLARE_DYNAMIC_CLASS(wxXmlResourceModule)
|
||||||
|
Reference in New Issue
Block a user