summaryrefslogtreecommitdiff
path: root/src/wx/dcp_panel.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2025-02-25 01:53:48 +0100
committerCarl Hetherington <cth@carlh.net>2025-02-25 01:54:22 +0100
commit9f150f04c8fce17dbcbe11278dd78c6e35809aa2 (patch)
treedc4c36254282b9152b9ff04dc09f07dc1e6ba0f1 /src/wx/dcp_panel.cc
parent674b74173d2d0ec8e178fa0938a4c48c2863c38b (diff)
Fix misunderstanding of wxDialog lifetime handling.2978-wxptr-crash
Broken by d0308d53dd9f4d036d8c5fe8023920fcdfd43f39 wxDialog can be stack allocated if opened with ShowModal(), but not with Show(). Go back to wx_ptr for those that are opened with Show().
Diffstat (limited to 'src/wx/dcp_panel.cc')
-rw-r--r--src/wx/dcp_panel.cc10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/wx/dcp_panel.cc b/src/wx/dcp_panel.cc
index 3d28a3ae5..0f0edc971 100644
--- a/src/wx/dcp_panel.cc
+++ b/src/wx/dcp_panel.cc
@@ -339,7 +339,7 @@ DCPPanel::resolution_changed ()
void
DCPPanel::markers_clicked ()
{
- _markers_dialog.emplace(_panel, _film, _viewer);
+ _markers_dialog.reset(_panel, _film, _viewer);
_markers_dialog->Show();
}
@@ -348,11 +348,11 @@ void
DCPPanel::metadata_clicked ()
{
if (_film->interop()) {
- _interop_metadata_dialog.emplace(_panel, _film);
+ _interop_metadata_dialog.reset(_panel, _film);
_interop_metadata_dialog->setup ();
_interop_metadata_dialog->Show ();
} else {
- _smpte_metadata_dialog.emplace(_panel, _film);
+ _smpte_metadata_dialog.reset(_panel, _film);
_smpte_metadata_dialog->setup ();
_smpte_metadata_dialog->Show ();
}
@@ -362,7 +362,7 @@ DCPPanel::metadata_clicked ()
void
DCPPanel::reels_clicked()
{
- _dcp_timeline.emplace(_panel, _film);
+ _dcp_timeline.reset(_panel, _film);
_dcp_timeline->Show();
}
@@ -1029,7 +1029,7 @@ DCPPanel::show_audio_clicked ()
return;
}
- _audio_dialog.emplace(_panel, _film, _viewer);
+ _audio_dialog.reset(_panel, _film, _viewer);
_audio_dialog->Show();
}