From 7a9a117307fb3eafae688bf22b68d66cd46a8e03 Mon Sep 17 00:00:00 2001 From: Christian Muehlhaeuser Date: Fri, 7 Jan 2011 08:51:40 +0100 Subject: [PATCH] * Fixed recursive message fetching bug. --- src/libtomahawk/network/dbsyncconnection.cpp | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/libtomahawk/network/dbsyncconnection.cpp b/src/libtomahawk/network/dbsyncconnection.cpp index d36fc8980..2bfc41a60 100644 --- a/src/libtomahawk/network/dbsyncconnection.cpp +++ b/src/libtomahawk/network/dbsyncconnection.cpp @@ -253,15 +253,11 @@ void DBSyncConnection::sendOps() { qDebug() << Q_FUNC_INFO; - - if ( m_lastSentOp.isEmpty() ) - m_lastSentOp = m_uscache.value( "lastop" ).toString(); - - qDebug() << "Will send peer all ops since" << m_lastSentOp; + qDebug() << "Will send peer all ops since" << m_uscache.value( "lastop" ).toString(); source_ptr src = SourceList::instance()->getLocal(); - DatabaseCommand_loadOps* cmd = new DatabaseCommand_loadOps( src, m_lastSentOp ); + DatabaseCommand_loadOps* cmd = new DatabaseCommand_loadOps( src, m_uscache.value( "lastop" ).toString() ); connect( cmd, SIGNAL( done( QString, QString, QList< dbop_ptr > ) ), this, SLOT( sendOpsData( QString, QString, QList< dbop_ptr > ) ) ); @@ -273,8 +269,11 @@ void DBSyncConnection::sendOpsData( QString sinceguid, QString lastguid, QList< dbop_ptr > ops ) { qDebug() << Q_FUNC_INFO << sinceguid << lastguid << "Num ops to send:" << ops.length(); - m_lastSentOp = lastguid; + if ( m_lastSentOp == lastguid ) + ops.clear(); + + m_lastSentOp = lastguid; if( ops.length() == 0 ) { sendMsg( Msg::factory( "ok", Msg::DBOP ) );