X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fjob.cc;h=0feda64355fd95cc0e2d18472c7305cd94b6ec86;hb=e9cca90a162e3e4b1db4a5e5188831beaa69d44e;hp=a83249e798feba99abafc2a09f1393eb8cf5dc18;hpb=caf67bef2611a911307267b20dbf3be89ffff71f;p=dcpomatic.git diff --git a/src/lib/job.cc b/src/lib/job.cc index a83249e79..0feda6435 100644 --- a/src/lib/job.cc +++ b/src/lib/job.cc @@ -122,6 +122,42 @@ Job::run_wrapper () set_progress (1); set_state (FINISHED_ERROR); + } catch (dcp::StartCompressionError& e) { + + bool done = false; + +#ifdef DCPOMATIC_WINDOWS +#if (__GNUC__ && !__x86_64__) + /* 32-bit */ + set_error ( + _("Failed to encode the DCP."), + _("This error has probably occurred because you are running the 32-bit version of DCP-o-matic and " + "trying to use too many encoding threads. Please reduce the 'number of threads DCP-o-matic should " + "use' in the General tab of Preferences and try again.") + ); + done = true; +#else + /* 64-bit */ + if (running_32_on_64()) { + set_error ( + _("Failed to encode the DCP."), + _("This error has probably occurred because you are running the 32-bit version of DCP-o-matic. Please re-install DCP-o-matic with the 64-bit installer and try again.") + ); + done = true; + } +#endif +#endif + + if (!done) { + set_error ( + e.what (), + string (_("It is not known what caused this error.")) + " " + REPORT_PROBLEM + ); + } + + set_progress (1); + set_state (FINISHED_ERROR); + } catch (OpenFileError& e) { set_error ( @@ -178,7 +214,7 @@ Job::run_wrapper () set_progress (1); set_state (FINISHED_ERROR); - } catch (dcp::DCPReadError& e) { + } catch (dcp::ReadError& e) { set_error (e.message(), e.detail().get_value_or("")); set_progress (1);