]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/textdlgg.h
fixing overrelease and out-of-bounds write, fixes #13725
[wxWidgets.git] / include / wx / generic / textdlgg.h
index d9bdbdcfb7ca1fff77151b011818c323da27cc24..4d37d24251304e4cd5d03c14f93b1fe662f419d0 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        textdlgg.h
+// Name:        wx/generic/textdlgg.h
 // Purpose:     wxTextEntryDialog class
 // Author:      Julian Smart
 // Modified by:
@@ -37,12 +37,27 @@ extern WXDLLIMPEXP_DATA_CORE(const char) wxGetPasswordFromUserPromptStr[];
 class WXDLLIMPEXP_CORE wxTextEntryDialog : public wxDialog
 {
 public:
+    wxTextEntryDialog()
+    {
+        m_textctrl = NULL;
+    }
+
     wxTextEntryDialog(wxWindow *parent,
                       const wxString& message,
                       const wxString& caption = wxGetTextFromUserPromptStr,
                       const wxString& value = wxEmptyString,
                       long style = wxTextEntryDialogStyle,
-                      const wxPoint& pos = wxDefaultPosition);
+                      const wxPoint& pos = wxDefaultPosition)
+    {
+        Create(parent, message, caption, value, style, pos);
+    }
+
+    bool Create(wxWindow *parent,
+                const wxString& message,
+                const wxString& caption = wxGetTextFromUserPromptStr,
+                const wxString& value = wxEmptyString,
+                long style = wxTextEntryDialogStyle,
+                const wxPoint& pos = wxDefaultPosition);
 
     void SetValue(const wxString& val);
     wxString GetValue() const { return m_value; }
@@ -68,7 +83,7 @@ protected:
 private:
     DECLARE_EVENT_TABLE()
     DECLARE_DYNAMIC_CLASS(wxTextEntryDialog)
-    DECLARE_NO_COPY_CLASS(wxTextEntryDialog)
+    wxDECLARE_NO_COPY_CLASS(wxTextEntryDialog);
 };
 
 // ----------------------------------------------------------------------------
@@ -86,7 +101,7 @@ public:
                       const wxPoint& pos = wxDefaultPosition);
 private:
     DECLARE_DYNAMIC_CLASS(wxPasswordEntryDialog)
-    DECLARE_NO_COPY_CLASS(wxPasswordEntryDialog)
+    wxDECLARE_NO_COPY_CLASS(wxPasswordEntryDialog);
 };
 
 // ----------------------------------------------------------------------------