Handle errors in subtitle XML better (#1209).
authorCarl Hetherington <cth@carlh.net>
Sun, 25 Feb 2018 00:40:30 +0000 (00:40 +0000)
committerCarl Hetherington <cth@carlh.net>
Sun, 25 Feb 2018 00:43:25 +0000 (00:43 +0000)
ChangeLog
cscript
src/lib/job.cc
src/tools/dcpomatic_player.cc

index 771c321b765c279a3decc3cd0b3c43567db0d74f..e311e97286a8bd17867afdb65cb124581cc8e9d2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2018-02-25  Carl Hetherington  <cth@carlh.net>
+
+       * Handle errors in subtitle XML better (#1209).
+
 2018-02-24  Carl Hetherington  <cth@carlh.net>
 
        * Updated fr_FR translation from Thierry Journet.
diff --git a/cscript b/cscript
index 6f4034984eb8405945c0bb192a3b99c7f78572b8..ba4de2a297cbda568901823a6e8342269613be65 100644 (file)
--- a/cscript
+++ b/cscript
@@ -283,8 +283,8 @@ def dependencies(target):
         ffmpeg_options = {}
 
     return (('ffmpeg-cdist', '5fce90f', ffmpeg_options),
-            ('libdcp', '95c6dd4'),
-            ('libsub', '4467345'),
+            ('libdcp', 'd4b350c'),
+            ('libsub', '26a74f7'),
             ('rtaudio-cdist', None))
 
 def configure_options(target):
index ccb75fa9332379ad27488da0e101ba786c150986..5134475ce6aa2f1b86fc8c6ac38635ac9bf10ca2 100644 (file)
@@ -174,6 +174,12 @@ Job::run_wrapper ()
                set_progress (1);
                set_state (FINISHED_ERROR);
 
+       } catch (dcp::DCPReadError& e) {
+
+               set_error (e.message(), e.detail().get_value_or(""));
+               set_progress (1);
+               set_state (FINISHED_ERROR);
+
        } catch (std::exception& e) {
 
                set_error (
index 3e36b575b2c16cdfe09713786636d744913882ee..d42320bfdd383c527af1a0170c15fd41e288306a 100644 (file)
@@ -181,7 +181,7 @@ public:
 
                shared_ptr<Job> last = jm->get().back();
                if (last->finished_in_error()) {
-                       error_dialog (this, std_to_wx (last->error_summary()) + ".\n");
+                       error_dialog(this, std_to_wx(last->error_summary()) + ".\n", std_to_wx(last->error_details()));
                        return;
                }