diff options
-rw-r--r-- | src/broadcast/broadcastmanager.cpp | 6 | ||||
-rw-r--r-- | src/broadcast/broadcastmanager.h | 2 | ||||
-rw-r--r-- | src/engine/sidechain/enginenetworkstream.cpp | 11 | ||||
-rw-r--r-- | src/engine/sidechain/enginenetworkstream.h | 4 |
4 files changed, 11 insertions, 12 deletions
diff --git a/src/broadcast/broadcastmanager.cpp b/src/broadcast/broadcastmanager.cpp index aa4f58df15..8a2f0560bf 100644 --- a/src/broadcast/broadcastmanager.cpp +++ b/src/broadcast/broadcastmanager.cpp @@ -13,9 +13,10 @@ BroadcastManager::BroadcastManager(SettingsManager* pSettingsManager, pSoundManager->getNetworkStream(); if (!pNetworkStream.isNull()) { - m_pBroadcast = new EngineBroadcast(m_pConfig, + m_pBroadcast = QSharedPointer<EngineBroadcast>( + new EngineBroadcast(m_pConfig, pSettingsManager->broadcastSettings(), - pNetworkStream->getNumOutputChannels()); + pNetworkStream->getNumOutputChannels())); pNetworkStream->addWorker(m_pBroadcast); } @@ -27,7 +28,6 @@ BroadcastManager::BroadcastManager(SettingsManager* pSettingsManager, BroadcastManager::~BroadcastManager() { // Disable broadcast so when Mixxx starts again it will not connect. m_pBroadcastEnabled->set(0); - delete m_pBroadcast; } void BroadcastManager::setEnabled(bool value) { diff --git a/src/broadcast/broadcastmanager.h b/src/broadcast/broadcastmanager.h index 877865a6f6..6d19ac61f9 100644 --- a/src/broadcast/broadcastmanager.h +++ b/src/broadcast/broadcastmanager.h @@ -32,7 +32,7 @@ class BroadcastManager : public QObject { private: UserSettingsPointer m_pConfig; - EngineBroadcast* m_pBroadcast; + QSharedPointer<EngineBroadcast> m_pBroadcast; ControlProxy* m_pBroadcastEnabled; }; diff --git a/src/engine/sidechain/enginenetworkstream.cpp b/src/engine/sidechain/enginenetworkstream.cpp index 36a793a763..4afc76b56c 100644 --- a/src/engine/sidechain/enginenetworkstream.cpp +++ b/src/engine/sidechain/enginenetworkstream.cpp @@ -39,8 +39,7 @@ EngineNetworkStream::EngineNetworkStream(int numOutputChannels, m_streamStartTimeUs(-1), m_streamFramesWritten(0), m_streamFramesRead(0), - m_writeOverflowCount(0), - m_pWorker(nullptr) { + m_writeOverflowCount(0) { if (numOutputChannels) { m_pOutputFifo = new FIFO<CSAMPLE>(numOutputChannels * kBufferFrames); } @@ -91,7 +90,7 @@ int EngineNetworkStream::getReadExpected() { } void EngineNetworkStream::write(const CSAMPLE* buffer, int frames) { - if (!m_pWorker) { + if (m_pWorker.isNull()) { return; } @@ -121,7 +120,7 @@ void EngineNetworkStream::write(const CSAMPLE* buffer, int frames) { } void EngineNetworkStream::writeSilence(int frames) { - if (!m_pWorker) { + if (m_pWorker.isNull()) { return; } //qDebug() << "EngineNetworkStream::writeSilence()" << frames; @@ -158,7 +157,7 @@ void EngineNetworkStream::writeSilence(int frames) { void EngineNetworkStream::writingDone(int interval) { // Signal worker if any - if (!m_pWorker) { + if (m_pWorker.isNull()) { return; } // Check for desired kNetworkLatencyFrames + 1/2 interval to @@ -246,7 +245,7 @@ qint64 EngineNetworkStream::getNetworkTimeUs() { #endif } -void EngineNetworkStream::addWorker(NetworkStreamWorker* pWorker) { +void EngineNetworkStream::addWorker(QSharedPointer<NetworkStreamWorker> pWorker) { m_pWorker = pWorker; if (m_pWorker) { m_pWorker->setOutputFifo(m_pOutputFifo); diff --git a/src/engine/sidechain/enginenetworkstream.h b/src/engine/sidechain/enginenetworkstream.h index 92c29d9705..5d346128ad 100644 --- a/src/engine/sidechain/enginenetworkstream.h +++ b/src/engine/sidechain/enginenetworkstream.h @@ -36,7 +36,7 @@ class EngineNetworkStream { static qint64 getNetworkTimeUs(); - void addWorker(NetworkStreamWorker* pWorker); + void addWorker(QSharedPointer<NetworkStreamWorker> pWorker); private: @@ -48,7 +48,7 @@ class EngineNetworkStream { qint64 m_streamStartTimeUs; qint64 m_streamFramesWritten; qint64 m_streamFramesRead; - NetworkStreamWorker* m_pWorker; + QSharedPointer<NetworkStreamWorker> m_pWorker; int m_writeOverflowCount; }; |