diff options
| author | Carl Hetherington <cth@carlh.net> | 2018-12-23 22:31:52 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2018-12-23 22:31:52 +0000 |
| commit | 4e558894d1f75f0d8aa64283e8b595a06c77869b (patch) | |
| tree | 55bf69a7a360beb893647546ef4d43545f1d6d96 /src | |
| parent | ddc1535c80dc494c13434478cfc1e1037548b053 (diff) | |
Fix crash on trying to use an invalid KDM.
Diffstat (limited to 'src')
| -rw-r--r-- | src/wx/swaroop_controls.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/wx/swaroop_controls.cc b/src/wx/swaroop_controls.cc index d6ab5c39d..2202dff2a 100644 --- a/src/wx/swaroop_controls.cc +++ b/src/wx/swaroop_controls.cc @@ -30,6 +30,7 @@ #include "lib/scoped_temporary.h" #include "lib/internet.h" #include <dcp/raw_convert.h> +#include <dcp/exceptions.h> #include <wx/listctrl.h> #include <wx/progdlg.h> @@ -396,8 +397,12 @@ SwaroopControls::spl_selection_changed () kdm = get_kdm_from_directory (dcp); } if (kdm) { - dcp->add_kdm (*kdm); - dcp->examine (_film, shared_ptr<Job>()); + try { + dcp->add_kdm (*kdm); + dcp->examine (_film, shared_ptr<Job>()); + } catch (KDMError& e) { + error_dialog (this, "Could not load KDM."); + } } if (dcp->needs_kdm()) { /* We didn't get a KDM for this */ |
