summaryrefslogtreecommitdiff
path: root/src/lib/decoder_factory.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/decoder_factory.cc')
-rw-r--r--src/lib/decoder_factory.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/lib/decoder_factory.cc b/src/lib/decoder_factory.cc
index 02d7064f4..b9baefa80 100644
--- a/src/lib/decoder_factory.cc
+++ b/src/lib/decoder_factory.cc
@@ -46,7 +46,12 @@ decoder_factory (shared_ptr<const Content> content, shared_ptr<Log> log, bool fa
shared_ptr<const DCPContent> dc = dynamic_pointer_cast<const DCPContent> (content);
if (dc) {
- return shared_ptr<Decoder> (new DCPDecoder (dc, log, fast));
+ try {
+ return shared_ptr<Decoder> (new DCPDecoder (dc, log, fast));
+ } catch (KDMError& e) {
+ /* This will be found and reported to the user when the content is examined */
+ return 0;
+ }
}
shared_ptr<const ImageContent> ic = dynamic_pointer_cast<const ImageContent> (content);