summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/job.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/lib/job.cc b/src/lib/job.cc
index 399b235d9..0feb73d31 100644
--- a/src/lib/job.cc
+++ b/src/lib/job.cc
@@ -22,6 +22,8 @@
*/
#include <boost/thread.hpp>
+#include <boost/filesystem.hpp>
+#include <libdcp/exceptions.h>
#include "job.h"
#include "util.h"
@@ -62,6 +64,14 @@ Job::run_wrapper ()
run ();
+ } catch (libdcp::FileError& e) {
+
+ set_progress (1);
+ set_state (FINISHED_ERROR);
+ stringstream s;
+ s << e.what() << "(" << filesystem::path (e.filename()).leaf() << ")";
+ set_error (s.str ());
+
} catch (std::exception& e) {
set_progress (1);