summaryrefslogtreecommitdiff
path: root/src/stereo_picture_mxf.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/stereo_picture_mxf.cc')
-rw-r--r--src/stereo_picture_mxf.cc14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/stereo_picture_mxf.cc b/src/stereo_picture_mxf.cc
index e68921e3..2ca00762 100644
--- a/src/stereo_picture_mxf.cc
+++ b/src/stereo_picture_mxf.cc
@@ -110,8 +110,18 @@ StereoPictureMXF::equals (shared_ptr<const Asset> other, EqualityOptions opt, No
DCP_ASSERT (other_picture);
for (int i = 0; i < _intrinsic_duration; ++i) {
- shared_ptr<const StereoPictureFrame> frame_A = get_frame (i);
- shared_ptr<const StereoPictureFrame> frame_B = other_picture->get_frame (i);
+ shared_ptr<const StereoPictureFrame> frame_A;
+ shared_ptr<const StereoPictureFrame> frame_B;
+ try {
+ frame_A = get_frame (i);
+ frame_B = other_picture->get_frame (i);
+ } catch (DCPReadError& e) {
+ /* If there was a problem reading the frame data we'll just assume
+ the two frames are not equal.
+ */
+ note (DCP_ERROR, e.what ());
+ return false;
+ }
if (!frame_buffer_equals (
i, opt, note,