diff options
| author | Carl Hetherington <cth@carlh.net> | 2015-11-26 09:25:49 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2015-11-26 09:25:49 +0000 |
| commit | 91a3c1f1ea36e69a17d33a16bdd3087e7ed53455 (patch) | |
| tree | 633f9cbebd64300a35881733a9708aa6054be325 /src | |
| parent | a8ca1e33be115bdf9ed0d8b01324f9db9d77ccf1 (diff) | |
Fix crash on cancelling the download certificate dialogue.
Diffstat (limited to 'src')
| -rw-r--r-- | src/wx/download_certificate_dialog.cc | 12 | ||||
| -rw-r--r-- | src/wx/download_certificate_dialog.h | 3 |
2 files changed, 11 insertions, 4 deletions
diff --git a/src/wx/download_certificate_dialog.cc b/src/wx/download_certificate_dialog.cc index 31f6a7b6a..8b51edc16 100644 --- a/src/wx/download_certificate_dialog.cc +++ b/src/wx/download_certificate_dialog.cc @@ -56,11 +56,17 @@ DownloadCertificateDialog::DownloadCertificateDialog (wxWindow* parent) SetSizerAndFit (sizer); - _notebook->Bind (wxEVT_NOTEBOOK_PAGE_CHANGED, boost::bind (&DownloadCertificateDialog::page_changed, this)); + _notebook->Bind (wxEVT_NOTEBOOK_PAGE_CHANGED, &DownloadCertificateDialog::page_changed, this); _download->Bind (wxEVT_COMMAND_BUTTON_CLICKED, boost::bind (&DownloadCertificateDialog::download, this)); _download->Enable (false); - page_changed (); + wxNotebookEvent ev; + page_changed (ev); +} + +DownloadCertificateDialog::~DownloadCertificateDialog () +{ + _notebook->Unbind (wxEVT_NOTEBOOK_PAGE_CHANGED, &DownloadCertificateDialog::page_changed, this); } void @@ -90,7 +96,7 @@ DownloadCertificateDialog::setup_sensitivity () } void -DownloadCertificateDialog::page_changed () +DownloadCertificateDialog::page_changed (wxNotebookEvent &) { int const n = _notebook->GetSelection(); if (!_setup[n]) { diff --git a/src/wx/download_certificate_dialog.h b/src/wx/download_certificate_dialog.h index 7d319dcfe..97d7d17ff 100644 --- a/src/wx/download_certificate_dialog.h +++ b/src/wx/download_certificate_dialog.h @@ -26,6 +26,7 @@ class DownloadCertificateDialog : public wxDialog { public: DownloadCertificateDialog (wxWindow* parent); + ~DownloadCertificateDialog (); dcp::Certificate certificate () const; @@ -33,7 +34,7 @@ public: private: void download (); - void page_changed (); + void page_changed (wxNotebookEvent &); wxNotebook* _notebook; std::vector<DownloadCertificatePanel*> _pages; |
