diff --git a/src/libtomahawk/source.cpp b/src/libtomahawk/source.cpp index b73eae7c1..9d96792db 100644 --- a/src/libtomahawk/source.cpp +++ b/src/libtomahawk/source.cpp @@ -361,6 +361,13 @@ Source::addCommand( const QSharedPointer& command ) void Source::executeCommands() { + if ( QThread::currentThread() != thread() ) + { + tDebug() << "Reinvoking in correct thread:" << Q_FUNC_INFO; + QMetaObject::invokeMethod( this, "executeCommands", Qt::QueuedConnection ); + return; + } + if ( !m_cmds.isEmpty() ) { QList< QSharedPointer > cmdGroup;