summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lib/hints.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/lib/hints.cc b/src/lib/hints.cc
index 131548035..ffe6d8e73 100644
--- a/src/lib/hints.cc
+++ b/src/lib/hints.cc
@@ -390,7 +390,15 @@ Hints::thread ()
boost::filesystem::path dcp_dir = film->dir("hints") / dcpomatic::get_process_id();
boost::filesystem::remove_all (dcp_dir);
- _writer->finish (film->dir("hints") / dcpomatic::get_process_id());
+
+ try {
+ _writer->finish (film->dir("hints") / dcpomatic::get_process_id());
+ } catch (...) {
+ store_current ();
+ emit (bind(boost::ref(Finished)));
+ return;
+ }
+
dcp::DCP dcp (dcp_dir);
dcp.read ();
DCPOMATIC_ASSERT (dcp.cpls().size() == 1);