summaryrefslogtreecommitdiff
path: root/src/verify.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2021-03-18 00:20:17 +0100
committerCarl Hetherington <cth@carlh.net>2021-03-18 23:30:48 +0100
commit4078aaae757db466d727c667dd9197b56d6b3f58 (patch)
tree47b733b51d838a7da708b9807478de1e166a5b4f /src/verify.cc
parentcf4e4272f72346c39964b128f78b2297f04dba55 (diff)
Improve errors when verifying a non-DCP directory.
Diffstat (limited to 'src/verify.cc')
-rw-r--r--src/verify.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/verify.cc b/src/verify.cc
index 8c367563..d8a4f37f 100644
--- a/src/verify.cc
+++ b/src/verify.cc
@@ -1122,8 +1122,12 @@ dcp::verify (
for (auto dcp: dcps) {
stage ("Checking DCP", dcp->directory());
+ bool carry_on = true;
try {
dcp->read (&notes);
+ } catch (MissingAssetmapError& e) {
+ notes.push_back ({VerificationNote::Type::ERROR, VerificationNote::Code::FAILED_READ, string(e.what())});
+ carry_on = false;
} catch (ReadError& e) {
notes.push_back ({VerificationNote::Type::ERROR, VerificationNote::Code::FAILED_READ, string(e.what())});
} catch (XMLError& e) {
@@ -1134,6 +1138,10 @@ dcp::verify (
notes.push_back ({VerificationNote::Type::ERROR, VerificationNote::Code::FAILED_READ, string(e.what())});
}
+ if (!carry_on) {
+ continue;
+ }
+
if (dcp->standard() != Standard::SMPTE) {
notes.push_back ({VerificationNote::Type::BV21_ERROR, VerificationNote::Code::INVALID_STANDARD});
}