From d8a2e55855b50eda28ec7d394449274f5e085bd6 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Wed, 5 Feb 2014 14:52:23 +0000 Subject: Fix some coverity-reported stuff. --- src/tools/dcpomatic_create.cc | 52 +++++++++++++++++++++++++------------------ src/tools/server_test.cc | 14 ++++++------ 2 files changed, 37 insertions(+), 29 deletions(-) (limited to 'src/tools') diff --git a/src/tools/dcpomatic_create.cc b/src/tools/dcpomatic_create.cc index 8be468b30..8dc4de50e 100644 --- a/src/tools/dcpomatic_create.cc +++ b/src/tools/dcpomatic_create.cc @@ -20,6 +20,7 @@ #include #include #include +#include #include #include #include "lib/version.h" @@ -34,6 +35,7 @@ using std::string; using std::cout; using std::cerr; using std::list; +using std::exception; using boost::shared_ptr; static void @@ -98,31 +100,37 @@ main (int argc, char* argv[]) dcpomatic_setup (); ui_signaller = new UISignaller (); - shared_ptr film (new Film (output)); - if (!name.empty ()) { - film->set_name (name); - } - - for (int i = optind; i < argc; ++i) { - film->examine_and_add_content (content_factory (film, argv[i])); - } - - JobManager* jm = JobManager::instance (); - while (jm->work_to_do ()) { - ui_signaller->ui_idle (); - } - - if (jm->errors ()) { - list > jobs = jm->get (); - for (list >::iterator i = jobs.begin(); i != jobs.end(); ++i) { - if ((*i)->finished_in_error ()) { - cerr << (*i)->error_summary () << "\n" - << (*i)->error_details () << "\n"; + try { + shared_ptr film (new Film (output)); + if (!name.empty ()) { + film->set_name (name); + } + + for (int i = optind; i < argc; ++i) { + film->examine_and_add_content (content_factory (film, argv[i])); + } + + JobManager* jm = JobManager::instance (); + while (jm->work_to_do ()) { + ui_signaller->ui_idle (); + } + + if (jm->errors ()) { + list > jobs = jm->get (); + for (list >::iterator i = jobs.begin(); i != jobs.end(); ++i) { + if ((*i)->finished_in_error ()) { + cerr << (*i)->error_summary () << "\n" + << (*i)->error_details () << "\n"; + } } + exit (EXIT_FAILURE); } + + film->write_metadata (); + } catch (exception& e) { + cerr << argv[0] << ": " << e.what() << "\n"; exit (EXIT_FAILURE); } - - film->write_metadata (); + return 0; } diff --git a/src/tools/server_test.cc b/src/tools/server_test.cc index b2c5e784b..039088862 100644 --- a/src/tools/server_test.cc +++ b/src/tools/server_test.cc @@ -137,14 +137,14 @@ main (int argc, char* argv[]) dcpomatic_setup (); - server = new ServerDescription (server_host, 1); - film.reset (new Film (film_dir)); - film->read_metadata (); - - shared_ptr player = film->make_player (); - player->disable_audio (); - try { + server = new ServerDescription (server_host, 1); + film.reset (new Film (film_dir)); + film->read_metadata (); + + shared_ptr player = film->make_player (); + player->disable_audio (); + player->Video.connect (boost::bind (process_video, _1, _2, _3, _5)); bool done = false; while (!done) { -- cgit v1.2.3