diff options
| -rw-r--r-- | src/tools/dcpomatic_player.cc | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/tools/dcpomatic_player.cc b/src/tools/dcpomatic_player.cc index c0587ed55..112f2c065 100644 --- a/src/tools/dcpomatic_player.cc +++ b/src/tools/dcpomatic_player.cc @@ -1150,8 +1150,15 @@ private: } _frame->Show (); - PlayServer* server = new PlayServer (_frame); - new thread (boost::bind (&PlayServer::run, server)); + try { + auto server = new PlayServer (_frame); + new thread (boost::bind (&PlayServer::run, server)); + } catch (std::exception& e) { + /* This is not the end of the world; probably a failure to bind the server socket + * because there's already another player running. + */ + LOG_DEBUG_PLAYER ("Failed to start play server (%1)", e.what()); + } if (!_dcp_to_load.empty() && boost::filesystem::is_directory (_dcp_to_load)) { try { |
