From 80e62471ad4796959c46655383b18135aa646bb2 Mon Sep 17 00:00:00 2001 From: Michael Wetherell Date: Thu, 16 Nov 2006 14:30:20 +0000 Subject: [PATCH] Change the factory constructor to not use a predefined wxMBConv object as it prevents global instances of the factories. The predefined converters are references which may not have been initialised when a global factory's constructor runs. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/archive.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/include/wx/archive.h b/include/wx/archive.h index 6f0ce844e1..7acebd1e28 100644 --- a/include/wx/archive.h +++ b/include/wx/archive.h @@ -342,7 +342,8 @@ public: wxPathFormat format = wxPATH_NATIVE) const = 0; void SetConv(wxMBConv& conv) { m_pConv = &conv; } - wxMBConv& GetConv() const { return *m_pConv; } + wxMBConv& GetConv() const + { if (m_pConv) return *m_pConv; else return wxConvLocal; } static const wxArchiveClassFactory *Find(const wxChar *protocol, wxStreamProtocolType type @@ -363,7 +364,7 @@ protected: virtual wxArchiveInputStream *DoNewStream(wxInputStream *stream) const = 0; virtual wxArchiveOutputStream *DoNewStream(wxOutputStream *stream) const = 0; - wxArchiveClassFactory() : m_pConv(&wxConvLocal), m_next(this) { } + wxArchiveClassFactory() : m_pConv(NULL), m_next(this) { } wxArchiveClassFactory& operator=(const wxArchiveClassFactory& WXUNUSED(f)) { return *this; }