diff --git a/mythtv/libs/libmythbase/mythcorecontext.cpp b/mythtv/libs/libmythbase/mythcorecontext.cpp
index f267853..873db89 100644
|
a
|
b
|
bool MythCoreContext::SetupCommandSocket(MythSocket *serverSock,
|
| 286 | 286 | return true; |
| 287 | 287 | } |
| 288 | 288 | |
| | 289 | // Connects to master server safely (i.e. by taking m_sockLock) |
| | 290 | bool MythCoreContext::SafeConnectToMasterServer(bool openEventSocket) |
| | 291 | { |
| | 292 | QMutexLocker locker(&d->m_sockLock); |
| | 293 | if (!d->m_serverSock) |
| | 294 | { |
| | 295 | bool blockingClient = GetNumSetting("idleTimeoutSecs",0) > 0; |
| | 296 | ConnectToMasterServer(blockingClient, openEventSocket); |
| | 297 | } |
| | 298 | } |
| | 299 | |
| 289 | 300 | // Assumes that either m_sockLock is held, or the app is still single |
| 290 | 301 | // threaded (i.e. during startup). |
| 291 | 302 | bool MythCoreContext::ConnectToMasterServer(bool blockingClient, |
diff --git a/mythtv/libs/libmythbase/mythcorecontext.h b/mythtv/libs/libmythbase/mythcorecontext.h
index af3401a..0bd98ce 100644
|
a
|
b
|
class MBASE_PUBLIC MythCoreContext : public QObject, public MythObservable, publ
|
| 59 | 59 | void SetEventSocket(MythSocket *eventSock); |
| 60 | 60 | void SetScheduler(MythScheduler *sched); |
| 61 | 61 | |
| | 62 | bool SafeConnectToMasterServer(bool openEventSocket = true); |
| 62 | 63 | bool ConnectToMasterServer(bool blockingClient = true, |
| 63 | 64 | bool openEventSocket = true); |
| 64 | 65 | |
diff --git a/mythtv/programs/mythfrontend/backendconnectionmanager.cpp b/mythtv/programs/mythfrontend/backendconnectionmanager.cpp
index 5843e48..8545912 100644
|
a
|
b
|
class Reconnect : public QRunnable
|
| 25 | 25 | |
| 26 | 26 | virtual void run(void) |
| 27 | 27 | { |
| 28 | | if (gCoreContext->GetMasterHostPrefix().isEmpty()) |
| | 28 | if (gCoreContext->SafeConnectToMasterServer()) |
| 29 | 29 | gCoreContext->dispatch(MythEvent(QString("RECONNECT_FAILURE"))); |
| 30 | 30 | else |
| 31 | 31 | gCoreContext->dispatch(MythEvent(QString("RECONNECT_SUCCESS"))); |