diff --git a/src/libtomahawk/network/controlconnection.cpp b/src/libtomahawk/network/controlconnection.cpp index d1b8c8ee0..bfbff6550 100644 --- a/src/libtomahawk/network/controlconnection.cpp +++ b/src/libtomahawk/network/controlconnection.cpp @@ -37,7 +37,8 @@ ControlConnection::~ControlConnection() delete m_pingtimer; m_servent->unregisterControlConnection(this); - if( m_dbsyncconn ) m_dbsyncconn->deleteLater(); + if( m_dbsyncconn ) + m_dbsyncconn->deleteLater(); } @@ -96,15 +97,15 @@ ControlConnection::registerSource() // .. but we'll use the shared pointer we've already made: m_registered = true; - setupDbSyncConnection(); m_servent->registerControlConnection( this ); + setupDbSyncConnection(); } void ControlConnection::setupDbSyncConnection( bool ondemand ) { - if( m_dbsyncconn != NULL || !m_registered ) + if ( m_dbsyncconn || !m_registered ) return; qDebug() << Q_FUNC_INFO << ondemand << m_source->id(); @@ -159,7 +160,7 @@ ControlConnection::dbSyncConnFinished( QObject* c ) DBSyncConnection* ControlConnection::dbSyncConnection() { - qDebug() << Q_FUNC_INFO; + qDebug() << Q_FUNC_INFO << m_source->id(); if ( !m_dbsyncconn ) { setupDbSyncConnection( true ); diff --git a/src/libtomahawk/network/servent.cpp b/src/libtomahawk/network/servent.cpp index 44525742b..1c3fae85f 100644 --- a/src/libtomahawk/network/servent.cpp +++ b/src/libtomahawk/network/servent.cpp @@ -711,7 +711,7 @@ Servent::triggerDBSync() if ( src.isNull() || src->isLocal() ) continue; - if ( src->controlConnection() ) // source online? + if ( src->controlConnection() && src->controlConnection()->dbSyncConnection() ) // source online? src->controlConnection()->dbSyncConnection()->trigger(); } } diff --git a/src/tomahawkapp.cpp b/src/tomahawkapp.cpp index 4d68b8aa7..62fb28086 100644 --- a/src/tomahawkapp.cpp +++ b/src/tomahawkapp.cpp @@ -422,6 +422,7 @@ TomahawkApp::initLocalCollection() src->addCollection( coll ); SourceList::instance()->setLocal( src ); + src->collection()->tracks(); // to make the stats signal be emitted by our local source // this will update the sidebar, etc.