diff options
| author | Carl Hetherington <cth@carlh.net> | 2018-01-08 23:14:28 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2018-01-08 23:14:28 +0000 |
| commit | 160a401d16e3962b10f3105e00992936a8188424 (patch) | |
| tree | ace5bfdb0d0736a9581855970b3d4bc7f14f159d /src/lib | |
| parent | 5dbc99a98cc758c80ffa23fa00318185ccd7acc7 (diff) | |
Fix a couple more crashes with incorrect KDMs (#1000).
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/dcp_content.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/lib/dcp_content.cc b/src/lib/dcp_content.cc index 43d6911f5..a6424874a 100644 --- a/src/lib/dcp_content.cc +++ b/src/lib/dcp_content.cc @@ -456,6 +456,9 @@ DCPContent::can_reference (function<shared_ptr<ContentPart> (shared_ptr<const Co } catch (dcp::DCPReadError) { /* We couldn't read the DCP; it's probably missing */ return false; + } catch (dcp::KDMDecryptionError) { + /* We have an incorrect KDM */ + return false; } /* fr must contain reels(). It can also contain other reels, but it must at @@ -497,6 +500,9 @@ DCPContent::can_reference_audio (list<string>& why_not) const } catch (dcp::DCPReadError) { /* We couldn't read the DCP, so it's probably missing */ return false; + } catch (dcp::KDMDecryptionError) { + /* We have an incorrect KDM */ + return false; } BOOST_FOREACH (shared_ptr<dcp::Reel> i, decoder->reels()) { @@ -518,6 +524,9 @@ DCPContent::can_reference_subtitle (list<string>& why_not) const } catch (dcp::DCPReadError) { /* We couldn't read the DCP, so it's probably missing */ return false; + } catch (dcp::KDMDecryptionError) { + /* We have an incorrect KDM */ + return false; } BOOST_FOREACH (shared_ptr<dcp::Reel> i, decoder->reels()) { |
