From 33a63a45e8b8191843293b9725023c07d650b873 Mon Sep 17 00:00:00 2001 From: Christian Muehlhaeuser Date: Sat, 27 Aug 2011 21:46:13 +0200 Subject: [PATCH] * Fixed mutex deadlock in SourceList. --- src/libtomahawk/sourcelist.cpp | 16 +++++++++------- src/libtomahawk/widgets/RecentPlaylistsModel.cpp | 6 +----- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/src/libtomahawk/sourcelist.cpp b/src/libtomahawk/sourcelist.cpp index ab222eeae..0ed9bf10e 100644 --- a/src/libtomahawk/sourcelist.cpp +++ b/src/libtomahawk/sourcelist.cpp @@ -83,15 +83,17 @@ SourceList::loadSources() void SourceList::setSources( const QList& sources ) { - QMutexLocker lock( &m_mut ); - - m_isReady = true; - foreach( const source_ptr& src, sources ) { - add( src ); - } + QMutexLocker lock( &m_mut ); - tLog() << Q_FUNC_INFO << "- Total sources now:" << m_sources.size(); + m_isReady = true; + foreach( const source_ptr& src, sources ) + { + add( src ); + } + + tLog() << Q_FUNC_INFO << "- Total sources now:" << m_sources.size(); + } emit ready(); } diff --git a/src/libtomahawk/widgets/RecentPlaylistsModel.cpp b/src/libtomahawk/widgets/RecentPlaylistsModel.cpp index 919f7bce3..2a0ea9bec 100644 --- a/src/libtomahawk/widgets/RecentPlaylistsModel.cpp +++ b/src/libtomahawk/widgets/RecentPlaylistsModel.cpp @@ -36,11 +36,7 @@ RecentPlaylistsModel::RecentPlaylistsModel( unsigned int maxPlaylists, QObject* : QAbstractListModel( parent ) , m_maxPlaylists( maxPlaylists ) { - - if ( Servent::instance()->isReady() ) - onReady(); - else - connect( Servent::instance(), SIGNAL( ready() ), this, SLOT( onReady() ) ); + connect( SourceList::instance(), SIGNAL( ready() ), SLOT( onReady() ) ); // Load recent playlists initially refresh();