diff --git a/mythtv/libs/libmythtv/AirPlay/mythairplayserver.cpp b/mythtv/libs/libmythtv/AirPlay/mythairplayserver.cpp
index 367a2a9..56eab48 100644
--- a/mythtv/libs/libmythtv/AirPlay/mythairplayserver.cpp
+++ b/mythtv/libs/libmythtv/AirPlay/mythairplayserver.cpp
@@ -22,9 +22,9 @@
 #include "bonjourregister.h"
 #include "mythairplayserver.h"
 
-MythAirplayServer* MythAirplayServer::gMythAirplayServer = NULL;
-MThread*           MythAirplayServer::gMythAirplayServerThread = NULL;
-QMutex*            MythAirplayServer::gMythAirplayServerMutex = new QMutex(QMutex::Recursive);
+static MythAirplayServer* s_airplayServer = NULL;
+static MThread*           s_airplayServerThread = NULL;
+static QMutex             s_airplayServerMutex;
 
 #define LOC QString("AirPlay: ")
 
@@ -307,35 +307,22 @@ class APHTTPRequest
 
 bool MythAirplayServer::Create(void)
 {
-    QMutexLocker locker(gMythAirplayServerMutex);
+    QMutexLocker locker(&s_airplayServerMutex);
 
-    // create the server thread
-    if (!gMythAirplayServerThread)
-        gMythAirplayServerThread = new MThread("AirplayServer");
-    if (!gMythAirplayServerThread)
-    {
-        LOG(VB_GENERAL, LOG_ERR, LOC + "Failed to create airplay thread.");
-        return false;
-    }
+    // server already exits
+    if (s_airplayServerThread)
+        return true;
 
-    // create the server object
-    if (!gMythAirplayServer)
-        gMythAirplayServer = new MythAirplayServer();
-    if (!gMythAirplayServer)
-    {
-        LOG(VB_GENERAL, LOG_ERR, LOC + "Failed to create airplay object.");
-        return false;
-    }
+    // create the server thread & server object
+    s_airplayServerThread = new MThread("AirplayServer");
+    s_airplayServer = new MythAirplayServer();
 
     // start the thread
-    if (!gMythAirplayServerThread->isRunning())
-    {
-        gMythAirplayServer->moveToThread(gMythAirplayServerThread->qthread());
-        QObject::connect(
-            gMythAirplayServerThread->qthread(), SIGNAL(started()),
-            gMythAirplayServer,                  SLOT(Start()));
-        gMythAirplayServerThread->start(QThread::LowestPriority);
-    }
+    s_airplayServer->moveToThread(s_airplayServerThread->qthread());
+    QObject::connect(
+        s_airplayServerThread->qthread(), SIGNAL(started()),
+        s_airplayServer,                  SLOT(Start()));
+    s_airplayServerThread->start(QThread::LowestPriority);
 
     LOG(VB_GENERAL, LOG_INFO, LOC + "Created airplay objects.");
     return true;
@@ -345,20 +332,22 @@ void MythAirplayServer::Cleanup(void)
 {
     LOG(VB_GENERAL, LOG_INFO, LOC + "Cleaning up.");
 
-    if (gMythAirplayServer)
-        gMythAirplayServer->Teardown();
+    QMutexLocker locker(&s_airplayServerMutex);
 
-    QMutexLocker locker(gMythAirplayServerMutex);
-    if (gMythAirplayServerThread)
+    if (s_airplayServer)
+        s_airplayServer->Teardown();
+
+    if (s_airplayServerThread)
     {
-        gMythAirplayServerThread->exit();
-        gMythAirplayServerThread->wait();
+        s_airplayServerThread->exit();
+        s_airplayServerThread->wait();
     }
-    delete gMythAirplayServerThread;
-    gMythAirplayServerThread = NULL;
 
-    delete gMythAirplayServer;
-    gMythAirplayServer = NULL;
+    delete s_airplayServer;
+    s_airplayServer = NULL;
+
+    delete s_airplayServerThread;
+    s_airplayServerThread = NULL;
 }
 
 
diff --git a/mythtv/libs/libmythtv/AirPlay/mythairplayserver.h b/mythtv/libs/libmythtv/AirPlay/mythairplayserver.h
index 2005b09..24b9c76 100644
--- a/mythtv/libs/libmythtv/AirPlay/mythairplayserver.h
+++ b/mythtv/libs/libmythtv/AirPlay/mythairplayserver.h
@@ -59,8 +59,6 @@ class MTV_PUBLIC MythAirplayServer : public ServerPool
   public:
     static bool Create(void);
     static void Cleanup(void);
-    static MythAirplayServer *AirplaySharedInstance(void)
-    { return gMythAirplayServer; }
 
     MythAirplayServer();
 
@@ -94,11 +92,6 @@ class MTV_PUBLIC MythAirplayServer : public ServerPool
     void PausePlayback(void);
     void UnpausePlayback(void);
 
-    // Globals
-    static MythAirplayServer *gMythAirplayServer;
-    static QMutex            *gMythAirplayServerMutex;
-    static MThread           *gMythAirplayServerThread;
-
     // Members
     QString          m_name;
     BonjourRegister *m_bonjour;
