]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/convauto.h
fix memory leak; allocate the DC before SetFont() is called on the status bar
[wxWidgets.git] / include / wx / convauto.h
index 398888a7884a4bae9064531216bca2ade7c1b956..b3dde4c73ad16f88a8baf7c6c65eb9d1c7969e51 100644 (file)
@@ -26,7 +26,8 @@ public:
     // default ctor, the real conversion will be created on demand
     wxConvAuto(wxFontEncoding enc = wxFONTENCODING_DEFAULT)
     {
-        m_conv = NULL; // the rest will be initialized later
+        Init();
+
         m_encDefault = enc;
     }
 
@@ -34,7 +35,8 @@ public:
     // deduced on first use
     wxConvAuto(const wxConvAuto& other) : wxMBConv()
     {
-        m_conv = NULL;
+        Init();
+
         m_encDefault = other.m_encDefault;
     }
 
@@ -84,6 +86,15 @@ private:
     // return the BOM type of this buffer
     static BOMType DetectBOM(const char *src, size_t srcLen);
 
+    // common part of all ctors
+    void Init()
+    {
+        // no need to initialize m_bomType and m_consumedBOM here, this will be
+        // done when m_conv is created
+        m_conv = NULL;
+        m_ownsConv = false;
+    }
+
     // initialize m_conv with the UTF-8 conversion
     void InitWithUTF8()
     {
@@ -126,7 +137,7 @@ private:
     bool m_consumedBOM;
 
 
-    DECLARE_NO_ASSIGN_CLASS(wxConvAuto)
+    wxDECLARE_NO_ASSIGN_CLASS(wxConvAuto);
 };
 
 #endif // wxUSE_WCHAR_T