X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Ftools%2Fdcpomatic_disk.cc;h=1907a604522149e1b642ee84022d4ef2fea6ccb2;hb=b915348a8288d68e2ff114fb3dd89ad22e699969;hp=f495ecc4188b8bb9b2aef37548da8ace017ed38a;hpb=04b34b7139407e3afa241939bc5416cf1bf06aef;p=dcpomatic.git diff --git a/src/tools/dcpomatic_disk.cc b/src/tools/dcpomatic_disk.cc index f495ecc41..1907a6045 100644 --- a/src/tools/dcpomatic_disk.cc +++ b/src/tools/dcpomatic_disk.cc @@ -139,7 +139,7 @@ public: /* XXX: this is a hack, but I expect we'll need logs and I'm not sure if there's * a better place to put them. */ - dcpomatic_log.reset(new FileLog(config_path() / "disk.log")); + dcpomatic_log = make_shared(State::write_path("disk.log")); dcpomatic_log->set_types (dcpomatic_log->types() | LogEntry::TYPE_DISK); LOG_DISK("dcpomatic_disk %1 started", dcpomatic_git_commit); @@ -182,6 +182,11 @@ public: void set_dcp (boost::filesystem::path dcp) { + if (!boost::filesystem::exists(dcp / "ASSETMAP") && !boost::filesystem::exists(dcp / "ASSETMAP.xml")) { + error_dialog (nullptr, _("No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP folder.")); + return; + } + _dcp_path = dcp; _dcp_name->SetLabel (std_to_wx(dcp.filename().string())); } @@ -413,7 +418,7 @@ public: : _frame (nullptr) {} - bool OnInit () + bool OnInit () override { try { Config::FailedToLoad.connect (boost::bind (&App::config_failed_to_load, this)); @@ -484,13 +489,13 @@ public: return true; } - void OnInitCmdLine (wxCmdLineParser& parser) + void OnInitCmdLine (wxCmdLineParser& parser) override { parser.SetDesc (command_line_description); parser.SetSwitchChars (wxT ("-")); } - bool OnCmdLineParsed (wxCmdLineParser& parser) + bool OnCmdLineParsed (wxCmdLineParser& parser) override { _skip_alpha_check = parser.Found(wxT("sure")); @@ -544,14 +549,14 @@ public: } } - bool OnExceptionInMainLoop () + bool OnExceptionInMainLoop () override { report_exception (); /* This will terminate the program */ return false; } - void OnUnhandledException () + void OnUnhandledException () override { report_exception (); }